关于前端:你不知道的下划线属性textdecoration

255次阅读

共计 2047 个字符,预计需要花费 6 分钟才能阅读完成。

大家好,我是半夏👴,一个刚刚开始写文的沙雕程序员. 如果喜爱我的文章,能够关注➕ 点赞 👍 加我微信:frontendpicker,一起学习交换前端,成为更优良的工程师~关注公众号:搞前端的半夏, 理解更多前端常识! 点我摸索新世界!

原文链接 ==>http://sylblog.xin/archives/20

前言


上一篇文章咱们介绍了这张图,还是这张图,引出本文本文想要介绍的内容,下划线,上划线,删除线。

第一眼看过来,咱们看到的是啥?没错,是 文字

text-decoration

定义

text-decoration 是用来设定文本的下划线,上划线,删除线

以下三种属性的简写:

text-decoration-line

text-decoration-color

text-decoration-style

text-decoration-line

属性值

none:不画线,并删除任何现有的装璜。

underline: 在文本的基线上画一条 1px 的线。

line-through: 在文本的“两头”点画一条 1px 的线。

overline:在文本的“顶部”上方绘制一条 1px 的线。

inherit: 继承父元素。

blink : 已被弃用,并且不能在任何以后浏览器中应用。当它工作时,它通过在 0% 和 100% 不透明度之间疾速切换使文本看起来“闪动”。

underline,line-through,overline 这三个属性能够随便组合

不同的浏览器,成果可能不一样

这一张是 chrome 浏览器的

这一张是 opera 浏览器的,对于 y 这种会超出基线的字符,成果跟 chrome 是不统一的,备注::我的 opera 版本很老,是 45 的,

这里附上下载获取各个版本 opera 的链接

text-decoration-color

设置线的色彩, 当然前提是要设定线。

text-decoration-style

设置线的款式

属性值

solid: 默认。单实线。

double: 一对实线。

dotted: 点虚线。

dashed: 虚线。

wavy: 波浪线。

text-underline-offset

设置下划线偏移地位。

auto

默认值。

\<length\>

长度值。

\<percent\>

百分比值。百分比是绝对于 1em 大小计算的。因而,text-underline-offset:100% 等同于 text-underline-offset:1em。

text-underline-offset:10px

text-decoration-skip

先上兼容性

这个属性根本就没啥支流浏览器兼容的,所以要慎用!!!

属性值

objects: 默认。会跳过内联元素

这个属性在 opera45 进行测试的时候是能够被辨认,然而被没有呈现想要的成果(can iuse 给的论断有点问题!)。
只能简略说一下了。

 text-decoration-line: underline;
 text-decoration-skip: objects;
 
<p>yyy<span>123</span>-text-decoration-skip: objects;<p>

对于下面的代码,在 123 上面是没有线的

none: 下划线穿过所有。

下过大略就是上面这样

spaces: 跳过空格、单词分隔符和任何用 letter-spacing 或设置的空格 word-spacing。

在 opera45 中无奈被辨认,
成果大略就是这样:

ink: 跳过超出基线的字符。

因为在 chrome 浏览器中,会主动跳过超过极限的字符(下面介绍过),所以咱们换成了 opera45,查看成果。

  text-decoration-line: underline;
  text-decoration-skip: ink

edges

文本润饰的开始与完结会比原有的装璜范畴向内膨胀(例如半个线宽)。这样,相邻的元素的下划线就能够离开。(这对于中文很重要,因为在中文中,下划线也是一种模式的标点符号。)
An example of “text-decoration-skip: edges;”.

box-decoration

文本润饰会跳过盒模型的内边距、边框、外边距。这只会影响到先人元素定义的润饰;润饰的盒不会渲染自身的盒润饰。

text-decoration-skip-ink

属性值

auto 跟 text-decoration-skip:ink 体现统一。

none;

text-decoration-thickness

用来设置上划线,下划线,删除线的粗细。

兼容性

属性值

auto:

(默认)容许浏览器为文本装璜线指定适当的粗细。

from-font:

如果第一个可用字体具备指定粗细,则应用。

\<length\>:

带有单位的无效长度,例如 10px;

text-decoration-thickness: 10px;

percentage:

将文本装璜线的粗细指定为元素字体中 1em 的百分比。

    font-size: 50px;
    text-decoration-thickness: 20%;

initial:

属性的默认设置为 auto。

inherit:

继承父元素

unset:

勾销设置粗细

正文完
 0