发表于: 2017-06-23 22:07:04

3 948


今天主要进行了任务4的书写和小课堂的准备

1. 先说任务4

首先是发现天数的一个bug

if (sessionStorage.getItem("playerStatus")) {
   playerStatus.day++;
} else {
   roleStatus.day++;
}

原本将这一段代码放在了一个for循环里,但是这样导致该段代码在满足for循环条件下多次无意义循环执行,所以先把for循环去了

原来存储天数的方式是playerStatus[i].day++,但是这样导致第一天被杀死的人天数多增加1,所以,在生成解密页面的时候,实际的第一天杀死的人会被添加到最底下,改用如上方式之后,就可以顺序展开解密内容

最终的结果页,同样使用jq动态添加

for (var i=0; i<roles.length; i++) {
   $(".js-add").append(
       playerStatus[i].num + "号玩家被杀死了,真实身份是" + playerStatus[i].identity
   );
}

但是刷新之后出现了一个新的问题,就是所有的内容都被一键动态添加到div内,准备改为通过其他条件判断进行内容添加

2. 今天准备了小课堂的内容

原本在做CSS任务的时候,为了进行浏览器默认效果的重置,直接引入了reset.css将所有浏览器默认样式清除,今天做了一下小课堂发现原来还有使用normalize.css的方式进行样式重置的,并且有别于reset.css,这是一个实现功能更加灵活的方式

reset.css是由于各种浏览器解释CSS样式的初始值有所不同,导致设计师在没有定义某个CSS属性时,不同的浏览器会按照自己的默认值来为没有定义的样式赋值,所以我们要先定义好一些CSS样式,去“覆盖”浏览器的CSS默认属性,来让所有浏览器都按照同样的规则解释CSS,这样就能避免发生这种问题。

Normalize.css 只是一个很小的CSS文件,但它在默认的HTML元素样式上提供了跨浏览器的高度一致性。相比于传统的CSS reset,Normalize.css是一种现代的、为HTML5准备的优质替代方案。它不仅改正了一些浏览器显示的样式问题,而且还将一些浏览器原有的样式保留了,这样就不用重新在自己的样式表里进行排版

关于这两者的区别和应用,在明天具体展开

遇到的问题就是这个结果页的动态添加,准备明天解决,并且早日做完任务4

收获就是学会了新的浏览器样式重置知识,并且对浏览器样式重置加深了理解



返回列表 返回列表
评论

    分享到