导航
因为浏览器的兼容问题,不同浏览器对有些标签的默认值是不同的,如果没对CSS初始化往往会出现浏览器之间的页面显示差异。
当然,初始化样式会对 SEO 有一定的影响,但鱼和熊掌不可兼得,但力求影响最小的情况下初始化。
最简单的初始化方法: * { padding: 0; margin: 0; }
(强烈不建议)
使用 normalize.css
优先级为:
属性的含义:
min-width
限制元素的最小宽度max-width
限制元素的最大宽度width
元素的宽度三者之间的优先级:
min-width
和 max-width
的优先级都高于 width
。即使 width
后面加上 !important
。
min-width
时,元素的 width
就会被 min-width
的值取代,浏览器出现滚动条来容纳元素。max-width
时,元素的 width
就会被 max-width
值取代。min-width
值大于 max-width
时,则以 min-width
值为准。所以三者优先级排序: min-width > max-width > width
当 min-width > width
时,以 min-width
为主
<style>
.box {
min-width: 600px;
max-width: 1000px;
/*当width值设为<600px时,盒子始终以宽600px呈现*/
/*当width值设为>1000px时,盒子始终以宽1000px呈现*/
width: 200px;
height: 100px;
background-color: red;
}
</style>
<body>
<div class="box"></div>
<div class="item"></div>
</body>
当 max-width < width
时,以 max-width
为主
<style>
.box {
min-width: 600px;
max-width: 1000px;
/*当浏览器缩放过程中,计算得到width值<min-width时,则宽度为600px*/
/*当浏览器放大程中,计算得到width值>max-width时,则宽度为1000px*/
width: 100%;
height: 100px;
background-color: red;
}
</style>
<body>
<div class="box"></div>
<div class="item"></div>
</body>
.a1 { color: red; }
.a2 { color: blue; }
.a3 { color: yellow; }
则 <span class="a2 a3 a1">test</span>
的颜色是:
A. red B. blue C.yellow D. 不确定
overflow: hidden
(缺点:阴影和下拉菜单)overflow:hidden
overflow: hidden
overflow:hidden
额外标签 clear: both
BFC父元素 overflow:hidden
伪元素
.clearfix::after {
content: "";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
display: block
行高是指一行文字的高度,具体说是两行文字间基线的距离。CSS中起高度作用的是 height 和 line-height,没有定义 height 属性,最终其表现作用一定是 line-height 。