CSS常用样式

164 阅读2分钟

单行溢出显示省略号

p {
	width: 100px;
	white-space: nowrap; /* 不换行 */
	overflow: hidden; /* 溢出隐藏 */
	text-overflow: ellipsis; /* 溢出部分显示省略号 */
}

white-space

对元素内的空白(包括换行)的处理

属性值描述
normal默认值。空白会被浏览器忽略
pre空白会被浏览器保留。其行为方式类似 HTML 中的 <pre> 标签。
nowrap文本不会换行,文本会在在同一行上继续,直到遇到 <br>标签为止。
pre-wrap保留空白符序列,但是正常地进行换行。
pre-line合并空白符序列,但是保留换行符。(效果似乎跟normal相似,连续多个空白符保留显示一个?)

overflow

对超出元素框的内容的处理

属性值描述
visible默认值。内容不会被修剪,会呈现在元素框之外
hidden内容会被修剪,并且其余内容是不可见的。
scroll内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
scroll与auto对比:

text-overflow

对超出元素框的文本的处理

属性值描述
clip默认值。修剪文本。
ellipsis显示省略符号来代表被修剪的文本。
string使用给定的字符串来代表被修剪的文本。(只在firefox有效


chrome设置小于12px的字体大小

chrome 对小于12px的字体都显示为12px,0px除外。

  1. 用户可以在chrome://settings/fonts中设置最小字体显示
  2. 通过 -webkit-text-size-adjust: none; 设置,chrome27之后chrome不再支持该属性
  3. 通过 transform: scale()进行缩放,但会存在一些问题,如下:
  • 缩放属性对行内元素无效,需设置元素的display属性
  • scale缩小其实是以容器的中心为原点进行缩小,字体缩小的同时,内容容器也会自动移动呈现上下左右居中的效果。解决方案:transform-origin: 0 0可以改变缩放的原点

css兼容不同浏览器使用的前缀

前缀兼容的浏览器
-webkit-谷歌的Chrome和苹果的Safari浏览器
-ms-微软的Internet Explorer、Edge浏览器
-moz-火狐的Firefox浏览器
-o-Opera浏览器


水平垂直居中

水平垂直居中