单行溢出显示省略号
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除外。
- 用户可以在chrome://settings/fonts中设置最小字体显示
- 通过
-webkit-text-size-adjust: none;设置,chrome27之后chrome不再支持该属性 - 通过
transform: scale()进行缩放,但会存在一些问题,如下:
- 缩放属性对行内元素无效,需设置元素的display属性
- scale缩小其实是以容器的中心为原点进行缩小,字体缩小的同时,内容容器也会自动移动呈现上下左右居中的效果。解决方案:
transform-origin: 0 0可以改变缩放的原点
css兼容不同浏览器使用的前缀
| 前缀 | 兼容的浏览器 |
|---|---|
| -webkit- | 谷歌的Chrome和苹果的Safari浏览器 |
| -ms- | 微软的Internet Explorer、Edge浏览器 |
| -moz- | 火狐的Firefox浏览器 |
| -o- | Opera浏览器 |