文档流与高度
元素的自动高度,是由其内部所有文档流元素的高度总和决定的(注意“决定”不代表“相等”)。
文档流就是文档内元素流动的方向。
行内元素(内联元素)的流动方向是从左往右,当一行不够时换行;
块级元素(外联元素)的流动方向是从上往下,每个块级元素独占一行,宽度不影响这个特性;
行内元素中的文字换行时,默认是不会将一个完整的英文单词或连续的字母和数字截断的,而会将汉字截断;如果想让换行时截断任意字符,可以给行内元素添加属性
word-break: break-all
。字体的居中不是以中线对齐,而是以基线对齐。
字体的默认行高是由每种字体内置的推荐行高决定的,不同的字体有不同的推荐行高。
行内元素的自动高度等于默认行高、上下内边距以及上下边框的总和。
实际开发中,尽量不使用
height
属性设置元素的高度。
脱离文档流与定位
除了浮动属性外,使用元素的定位属性也可以使元素脱离文档流,例如相对定位和固定定位。
当子元素脱离文档流后,父元素的高度会塌陷。
元素脱离文档流后,元素拥有行内块级元素特性,元素的自动宽度由内部的内容决定。
固定定位
fixed
会使元素相对于<body>
元素定位。使用绝对定位
absolute
定位元素时,一般要将元素的父元素设置为相对定位relative
,简称“子绝父相”。
背景图
使用
background-position
属相来设置背景图的定位方式。使用
background-size
属性来设置背景图的填充方式。
边框的妙用
利用加粗加大的边框,配合不同的样式属性,可以做出很多不同的效果,例如做个三角形:
1 | .test{ |
图标资源
阿里图标库 了解一下;
<svg>
元素的宽高需要同时设置;颜色设置使用fill
属性。