CSS3 文本
CSS1和CSS2的文本
CSS的文本主要分为3个大类,字体,颜色和文本排版样式,颜色很简单就是color属性,后边还会单独介绍颜色,这里复习一下字体属性和文本排版样式属性。由于文本是很重要的一环,所以CSS3之前的文本功能也比较齐全了。
属性 | 功能 | 值 |
---|---|---|
font-familiy | 字体类型 | 根据浏览器支持程度和系统来取值,一定要有兜底字体。不过现代浏览器在找不到字体的时候也会有默认字体。 |
font-style | 字体样式,该属性一般用来设置斜体因为语义不对,一般用于把非正常倾斜的字体恢复正常,比如一些图标字体。 | normal默认值,italic斜体,oblique倾斜,用于定义字体样式 |
font-weight | 字体粗细,要看字体的粗细程度有几种,一般100轻,400正常,700粗体。 | 100-900,也可以用文字:normal,bold,bolder,lighter,具体哪些值有效果要看字体支持的字重。 |
font-size-adjust | 定义是否强制文本采取同一尺寸,不常用 | |
font-stretch | 是否横向拉伸字体,不常用 | |
font-variant | 定义字体大小写样式 | normal表示默认,small-caps表示小型的大写字母字体,将小写字母显示为小型的大写字母。 |
属性 | 功能 | 值 |
---|---|---|
word-spacing | 词之间的间距 | normal或者具体值,可以是负数 |
letter-spacing | 字符之间的间距 | normal或者具体值 |
vertical-align | 这个实际上对所有内联样式有效 | 可以设置为baseline,sub,super,bottom,top,middle等,常用来将图片与底部对其。 |
text-decoration | 定义修饰线 | none,underline,overline,line-through,blink |
text-indent | 文本首行缩进 | 一般用em来控制缩进距离 |
text-align | 水平居中,对所有内联标签有效 | left,center,right,justify |
line-height | 行高,就是字基线之间的距离 | 将行高设置为和盒子一致可以让字垂直居中对齐。 |
text-transform | 每个词的大小写 | uppercase大写,lowercase小写,capitalize首字母大写,注意这个是针对每个单词的。 |
white-space | 文字之间和文本之间的空白间距,常用于把一段排的乱七八糟的文本正常显示 | nowrap空白符合并,换行符忽略,pre空白和换行符保留,pre-wrap空白符换行符保留,pre-line空白符合并,换行符保留 |
direction | 控制文本流入的方向 | ltr左侧流入(默认),rtl右侧流入。不仅是文字,排版方向也会改变,比如只改变rtl的话,文字变成默认右对齐。 |
CSS3文本属性
CSS3文本针对本来就比较全的文本属性引入和强化了一些新属性,用于更方便的排版
text-shadow
- 4个参数,分别是颜色,X轴偏移,Y轴便宜,模糊半径
- 模糊半径只能取正值,和box-shadow很类似
- 支持多个阴影叠加,常用于制作立体文本
- 4个参数,分别是颜色,X轴偏移,Y轴便宜,模糊半径
text-overflow
- 只能取一个值,不能同时设置,分别是clip 或 ellipsis
- clip 表示直接剪裁
- ellipsis表示显示省略号
- 这个属性比较有意思,由于文本在浏览器内优先度很高,显示不下会自动换行以保证显示,如果要实现显示省略号的效果,必须要和
overflow: hidden 和 white-space: nowrap
搭配使用。在京东项目里已经使用过了。
word-wrap
- 这是控制文本换行的属性,一个值,可取 nomral 或 break-word
- normal表示浏览器只在半角空格或连字符(减号)的地方进行换行
- break-word表示到了边界就换行,但是不截断英文单词
word-break
- 用于检索单词内换行的行为,值可以选 normal, break-all 和 keep-all
- normal表示保留整个单词
- break-all表示强行截断英文单词,达到词内换行效果
- keep-all不允许断开单词,中文的话把前后标点符号内的一个汉字短语整个换行,英文单词整个换行。