忙忙碌碌的,没空整理。最近遇到些CSS相关问题,之前只是印象中要这么用,不知道之所以然,今天就大概的整理下(会比较零散)。
标准盒子模型:宽度=内容宽度(content)+ border + padding + margin IE盒子模型:宽度=内容宽度(content + border + padding)+ margin
用来控制元素的盒子模型的解析模式。默认为content-box
content-box: W3C标准盒子模型,设置元素的width/height属性是指content部分的宽/高。
border-box: IE传统盒子模型,设置元素的width/height属性是指(content + border + paddubg)部分的宽/高
div/table/h1-h6/p/form/ol等,以及html5新增的section/canvas/audio/video等等。
块级元素:
width、margin、border、padding、width属性a/input/textarea/button/label/select等等
行内元素:
BFC规定了内部的Block Box如何布局.。可参考理解CSS的BFC 特征:
触发BFC条件:
float的值不为none position的值不为static或者relative display的值为inline-block、table-cell、table-caption、inline-flex或者flex其中之一overflow的值不为visiabl :用于CSS3中的伪类,双冒号::用于CSS3中的伪元素::brfore就是一个子元素的存在,定义在元素主体内容之前的一个伪元素,并不存在于DOM中。:before 和 :after 这两个伪元素,是在CSS2.1里新出现的。起初,伪元素的前缀使用的是单冒号语法,但随着Web的进化,在CSS3的规范里,伪元素的语法被修改成使用双冒号,成为::before ::after
div {
background-color: #ffffff; /* 所有识别 */
background-color: #fbfbfb; /* IE6、7、8识别 */
+background-color: #fcfcfc; /* IE7识别 */
_background-color: #fdfdfd; /* IE6识别 */
} p { font-size: 10px; -webkit-transform: scale(0.8); } //0.8是缩放比例 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no"/>