首页·CSS 属性

CSS 属性词典 154 条

每个属性做什么、常用的值有哪些、会不会传给子元素,一行说清。

布局11

决定元素当作哪种盒子处理、内容溢出时怎么办的一类属性。

弹性与网格24

把元素排成行、摆进格子的一类属性。今天的布局大半靠这两套。

盒子与间距16

尺寸和间距。外边距上下会合并,内边距上会铺背景色。

文字25

字体、行高、对齐这些决定读起来什么样的属性。大多会传给子元素。

font-size文字大小。rem 跟着根元素走,em 跟着父元素走。font-family用哪套字体。按顺序往后找,直到找到装了的那一款。font-weight笔画的粗细。400 是常规,700 是粗体。font-style要不要斜体。italic 用专门的斜体字,oblique 只是把字压斜。font一行写完字体的几个属性。没写到的会被悄悄重置。line-height行与行之间的高度。不带单位的数值最好使。letter-spacing字与字之间的间距。标题收紧一点常更好看。word-spacing词与词之间的间距。text-align文字在行内往哪边靠。text-decoration下划线、删除线这些,一行写完。text-decoration-line只决定画哪种线:下划线、上划线还是删除线。text-decoration-color只决定那条线的颜色。text-decoration-style那条线是实线、虚线还是波浪线。text-transform把字自动变成全大写或全小写,原文不动。text-indent段落第一行缩进多少。text-overflow放不下的文字怎么收尾,ellipsis 会补上省略号。text-shadow给文字加投影。图片上的字靠它拉开对比。white-space空格和换行是保留还是合并。word-break长单词要不要在中间硬断开。overflow-wrap一个词长到撑破容器时,允许在词内换行。writing-mode文字横着排还是竖着排。vertical-align行内元素在这一行里上下怎么对齐。font-variant-numeric数字要不要等宽。表格里的数字对齐靠它。hyphens换行时允不允许自动加连字符。text-wrap决定换行怎么断。balance 会把标题各行长度拉匀。

颜色与背景13

文字色、背景色、渐变和透明度。

边框13

边框、圆角和阴影。outline 不占位置。

效果7

模糊、裁切、遮罩这类画完之后再加上去的效果。

变形与动效14

位移、旋转和平滑过渡。不动布局,所以画面不容易抖。

定位7

把元素从文档流里拎出来放到指定位置。前后顺序由 z-index 定。

表格4

管表格边框和列宽的一类属性。

列表4

决定列表标记的样子和位置。

交互9

决定怎么响应鼠标、手指和滚动。

打印与其他7

打印和自动编号这些剩下的用途。

怎么看这一页

  • 会继承的属性,在父元素上写一次,所有子元素都跟着用。和文字有关的属性大多如此。
  • 简写属性会把你没写到的值悄悄退回默认值。只写 background: red,先前设的背景图也一并没了。
  • 同一个元素上规则撞车时,选择器越具体的赢。只有具体度一样时,才轮到写在后面的赢。
  • 做动效尽量用 transform 和 opacity,会顺滑得多。改 width 或 top 得重新算一遍布局。

常见问题

Q. CSS 属性一共有多少个?

光是写进标准的就有五百多个,但真正常动手的只是其中一部分。这里按用途收了做页面时会反复用到的 154 个。

Q. 「继承」是什么意思?

意思是写在父元素上,子元素不用另写也照着用。字体、文字色、行高这些和文字有关的属性大多会继承;间距和边框则不会。

Q. 用简写属性有什么不一样?

一行能设好几个值,但没写到的那些会退回默认值。只写 background: red,先前设的背景图就跟着没了,原因就在这里。

Q. 同一个属性写了两遍,哪个赢?

先比选择器有多具体:id 强过 class,class 强过标签。具体度一样时,才轮到写在后面的赢。!important 能掀翻这套规则,但最好别用。

Q. px 和 rem 该用哪个?

rem 是根字号的倍数,用户在浏览器里把字调大,它会跟着变大。文字和间距用 rem 更稳妥;像细边框这种必须始终一样的值,px 更合适。