一、CSS优先级算法如何计算?
选择器优先级ID>class>元素选择器
ID选择器的特殊性值,加0,1,0,0。
类选择器、属性选择器或伪类,加0,0,1,0。
元素和伪元素,加0,0,0,1。
通配选择器*对特殊性没有贡献,即0,0,0,0。
最后比较特殊的一个标志!important(权重),它没有特殊性值,但它的优先级是最高的,为了方便记忆,可以认为它的特殊性值为1,0,0,0,0。
假如特殊性相同的两条规则应用到同一个元素会怎样?
css会先查看规则的权重(!important),加了权重的优先级最高,当权重相同的时候,会比较规则的特殊性,根据前面的优先级计算规则决定哪条规则起作用,当特殊性值也一样的时候,css规则会按顺序排序,后声明的规则优先级高
二、用纯CSS创建一个三角形的原理是什么?
三、li之间有看不见的空白间隔是什么原因引起的?有什么解决办法?
浏览器会把inline元素间的空白字符渲染成一个空格,空格占用了一个字符的宽度
解决方法:将<li>代码全部写在一行
使用float
四、浏览器是怎样解析css选择器的
按照从上到下,从右到左的顺序解析。
五、什么是响应式设计?
响应式网页设计就是一个网站能够兼容多个终端,而不是为每个终端都做一个特殊的版本,响应式设计的基本原理是通过媒体查询检测不同的设备屏幕尺寸做处理。
六、style标签可以写在body后么?与body前有什么区别
可以,写在body标签后由于浏览器以逐行方式对html文档进行解析,当解析到写在尾部的样式表(外联或写在style标签)会导致浏览器停止之前的渲染,等待加载且解析样式表完成之后重新渲染,在windows的IE下可能会出现FOUC现象(即样式失效导致的页面闪烁问题)
网友评论