深入浅析css text-emphasis属性,看看它的用法!

本篇文章带大家了解一下css text-emphasis属性,通过几个实例来介绍一下text-emphasis属性的使用方法。

深入浅析css text-emphasis属性,看看它的用法!

就一般而言,我们所做的页面并非对于文学类用户,因此也不太可能会接触到“着重号”这个符号。如果对于 word 不陌生的朋友应该会知道在 word 中有一个文本设置,就是设置“着重号”的。

1.png

电脑中没有 word,就从百度上搜了一张,反正呢,大概就是这个效果了。

那么本文要说的 CSS 属性也就是这个“着重号”的属性,我们可以通过 text-emphasis 属性设置文本“着重号”样式。这是 text-emphasis-colortext-emphasis-style 这两个属性的简写方式,也就是说,我们可以通过 text-emphasis 同时设定“着重号”字符样式以及颜色,比如:

立即学习“前端免费学习笔记(深入)”;

p {    -webkit-text-emphasis: dot red;    text-emphasis: dot red;}

那么就可以看到这样的效果。

2.png

至于在 word 中看到的是不是这样的效果,这个我也不知道了,反正呢,在 web 页面中,我们所看到的着重号不仅可以修改字符样式以及颜色,还可以修改大小和位置。

text-emphasis-style 有好几个属性值,并且也可以输入任意字符text-emphasis-color 则可以使用常规的 web 中使用的颜色值,rgba()rgb()什么的都可以;

而如果想要调整位置的话,那么就是要额外一个属性 text-emphasis-position,虽然看着这个属性跟 stylecolor 很相近,但并不是 text-emphasis 简写中的一个。那么对于 text-emphasis-position 在常规的情况下,我们能控制的位置是以及这两个方向,也就是:

text-emphasis-position: over;text-emphasis-position: under;

如想要了解更多的话,可以翻阅一下 MDN 中的具体介绍,这里不赘述。那么按照上面说的,我们把 CSS 部分修改一下,就像这样:

p {    -webkit-text-emphasis: '——' rgba(255, 0, 0, .5);    text-emphasis: '——' rgba(255, 0, 0, .5);    -webkit-text-emphasis-position: under;    text-emphasis-position: under;}

然后得到的结果就是:

3.png

看着是不是很像文本的下划线 text-decoration: underline; 的效果呢?那我们再增加一条这个属性看看效果。

p {    -webkit-text-emphasis: '——' rgba(255, 0, 0, .5);    text-emphasis: '——' rgba(255, 0, 0, .5);    -webkit-text-emphasis-position: under;    text-emphasis-position: under;    text-decoration: underline;}

4.png

这两个是不同的属性,差异必定也是有的。具体就不细化,主要的差异通过文档也是可以看到。这里需要提一下的是,text-decoration 属性值如果父级设定了 underline 样式,那么子级设定 overline,两个线条样式是会存在,就算是更换了 text-decoration-style 值也是如此。

text-emphasis 当我们改变了其中的属性值之后,结果也就不同。同时,如果我们未设定颜色值的话,“着重号”的颜色将会继承元素自身的文本颜色。因为可以设定颜色值,所以我们同样可以使用 transparent 直接设置元素为透明

提到继承,这里需要注意一个点,“着重号”的文本大小差不多是正常文本的一半左右

回顾一下前面提到的几个点:

可以输入任意字符;如未设定颜色将继承元素自身的 color 值,也可以设置为透明;“着重号”的大小是正常文本的一半左右;

结合这几个点,我们可以这样玩一下。

5.png

这里有一些地方是没有“着重号”,有一些是空白的或者特殊字符,部分是随便输入,部分是故意而为之。主要是想看看在一些特殊字符情况下,“着重号”的显示情况。

只会显示一个字符,无论该字符是全角还是半角字符,甚至是 emoji 特殊字符;只在可见文本字符上展示“着重号”;

那么这个效果的代码就是:

文本内容,一个 span 元素是 em ¥C元素哦,啊啊啊……

9.png

那么这篇内容就到这?不,还有一个东西我想说一下。从上面的效果图中可以看到,“着重号”是在文本下面或者上面的,那么对于一个正常的文本来说,行高(line-height)相信大家不会陌生。那么在有“着重号”的部分,加上 line-height 后会是怎么样的效果呢?

line-height: 20px; 加到 p 中之后,并未看到任何变化;而如果把 20px 换成 60px,有变化了,高度撑开了一丢丢;那再加大点,撑开了,“着重号”紧随着文本隔开了上下行内容。

6.png

突发奇想,当 line-height 的值比较小的时候,并未看到效果,正常情况下,没有 text-emphasis 时,比较小的 line-height 会让多行内容重叠,就像这样:

8.png

可现在有了 text-emphasis 后,并不会重叠了,看来是直接影响了 line-height 最小值的情况,必须保证多行之间的高度值在某个特定值,看着似乎是 1em 左右的大小,以便于放得下比文字正常 font-size 小一半的,且要与文本内容保持一定间距的“着重号”。

回到「冷门的 text-emphasis有什么用呢?」这个话题上。是啊,有什么用呢,除了正常表示某部分的文字内容是着重标记的以外,似乎也感受不到有什么用了。除非就是我们重复利用这个“着重号”的特性来玩,尤其是会撑开 line-height,以保证最少有 1em 左右的空间存在于多行之间。那么如果我们使用一个透明颜色的“着重号”,是不是代表着这部分文字的永远都不会叠加呢?

然后再结合 emoji 或者上下错乱的组合,会不会玩出不一样的天空呢?

回头想想啊,一个好好的“着重号”,还是让它做自己的事情,用来标注文本着重说明吧,还是不玩了。

更多编程相关知识,请访问:编程入门!!

以上就是深入浅析css text-emphasis属性,看看它的用法!的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1620579.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 07:11:46
下一篇 2025年12月15日 20:34:55

相关推荐

  • css怎么实现六边形

    css实现六边形的方法:1、将3个p组合在一起,其中包括2个等腰三角形和一个长方形;2、通过将3个长方形旋转不同角度得到正六边形。 本文操作环境:windows7系统、HTML5&&CSS3版、Dell G3电脑。 css怎么实现六边形? 最近在写一个蜂窝式布局,所以研究了一下六边形…

    2025年12月24日 好文分享
    000
  • css如何解决高度不一致问题

    css解决高度不一致的方法:1、给input加上“box-sizing: border-box;”;2、给button加上“box-sizing: content-box;”。 本文操作环境:windows7系统、HTML5&&CSS3版、Dell G3电脑。 css如何解决高度不一…

    2025年12月24日
    000
  • css内边距是什么

    css内边距是指元素边框与元素内容之间的空白区域。控制该区域的是padding、padding-top、padding-right、padding-bottom、padding-left属性;它们接受长度值或百分比值,但不允许使用负值。 本教程操作环境:windows7系统、CSS3版、Dell G…

    2025年12月24日
    000
  • css字体溢出怎么隐藏

    css中可以利用overflow属性来实现字体溢出隐藏效果,只需要给包裹字体的标签元素添加“overflow: hiddden;”样式即可。overflow属性用于控制内容溢出元素框时发生的事情,当值设置为“hidden”时溢出部分不可见。 本教程操作环境:windows7系统、CSS3&&…

    2025年12月24日 好文分享
    000
  • 值得收藏的26个css面试题,增强你的CSS基础!

    css在网页设计中非常流行,可以减少结构内容中的复杂性和重复。本篇文章给大家分享26个基于css的面试题,可以增强你的css基础,快来学习吧。 (学习视频分享:css视频教程) CSS是层叠样式表( Cascading Style Sheets )的缩写,是一种样式表语言,用于描述以 HTML 之类…

    2025年12月24日
    000
  • css中怎么设置table边框的颜色

    css中设置table边框颜色的方法是,给table边框添加border-color属性,并且根据需要设置table边框的颜色即可,例如【border-color:#ff0000 #0000ff;】。 本文操作环境:windows10系统、css 3、thinkpad t480电脑。 在工作中我们常…

    2025年12月24日
    000
  • css怎么将文本框设置为只读

    css将文本框设置为只读的方法是,在input文本框中添加readonly属性即可。readonly属性是一个布尔属性,该属性用来规定输入字段是只读的。 本文操作环境:windows10系统、css 3、thinkpad t480电脑。 readonly属性是HTML中的一个布尔属性,该属性用来规定…

    2025年12月24日
    000
  • css如何清除input默认样式

    css清除input默认样式的方法是,将input的各个属性的属性值设置为none即可,例如【background:none;outline:none;border:none;】。 本文操作环境:windows10系统、css 3、thinkpad t480电脑。 如果我们要清除input的默认样式…

    2025年12月24日
    000
  • 你可能不了解的CSS容器查询!!

    在前端开发中经常需要按不同屏幕尺寸来进设计达到PC和移动端响应式。我们一般使用CSS媒体查询来检测视口宽度或高度,然后根据该模式改变设计。 这就是在过去10年中设计Web布局的方式。 CSS容器查询,一个长期以来被web开发者要求的特性,很快就会出现在CSS中,在最新的 Chrome Canary …

    2025年12月24日 好文分享
    000
  • 在css中什么是行高

    在CSS中,行高是指包括内容区与以内容区为基础对称拓展的空白区域,也可以认为是相邻文本行基线间的垂直距离。行高可以利用line-height属性来设置,该属性不允许使用负值。 本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。 行高是包括内容区与以内…

    2025年12月24日 好文分享
    000
  • css怎么选择奇偶行元素

    在css中,可以利用“:nth-child(n)”选择器来进行奇偶匹配,选择奇偶行元素;该选择器的参数n可以是数字、关键词或公式,设置n为“Odd”或者“even”关键词即可匹配下标是奇数或偶数的子元素。 本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3…

    2025年12月24日 好文分享
    000
  • css如何换行

    在css中通过word-break与white-space这两个属性来设置自动换行,其中word-wrap属性允许长单词或URL地址换行到下一行;而white-space属性可以设置文本换行方式。 本文操作环境:windows7系统、css3版、Dell G3电脑。 css如何换行? css使容器放…

    2025年12月24日
    000
  • css怎么设置li不要点

    css设置li不要点的方法:1、找到相关性的CSS并在“.li”和“.ul”下写入“list-sytle:none;”;2、在head部分写入“list-style:none;”。 本文操作环境:windows7系统、css3版、Dell G3电脑。 css怎么设置li不要点? 标签是很多人做网站都…

    2025年12月24日
    000
  • css文件怎么引入

    引入css文件的方法:1、行内式方法引入,在标记的style属性中设定CSS样式;2、嵌入式方法引入,将CSS样式集中写在网页的style标签中;3、使用link引用外部CSS文件;4、使用@import引用外部CSS文件。 本文操作环境:windows7系统、HTML5&&CSS3…

    2025年12月24日
    000
  • css应该怎么设置超链接样式

    css设置超链接样式的方法是,给超链接添加伪类,例如【a:visited {color:#00FF00;}】。【a:visited】表示用户已经访问过的链接。 本文操作环境:windows10系统、css 3、thinkpad t480电脑。 如果我们要设置超链接的样式,其实是可以使用任何一个css…

    2025年12月24日
    000
  • css样式怎么隐藏起来

    把css样式隐藏起来的方法是,给元素设置【display:none;】属性,这样元素便会被隐藏,同时不再占据原来的位置。如果要重新显示元素,可以设置【displayL:block;】属性。 本文操作环境:windows10系统、css 3、thinkpad t480电脑。 如果我们要隐藏css中的样…

    2025年12月24日
    000
  • css如何设置div字体大小

    css设置div字体大小的方法是,给div字体添加font-size属性,并且设置合适的字体大小即可,例如【div {font-size:200%;}】。 本文操作环境:windows10系统、css 3、thinkpad t480电脑。 要设置div字体的大小,可以使用css中的font-size…

    2025年12月24日
    000
  • css如何使页面整体居中

    css使页面整体居中的方法是,给整个网页主体添加一个div盒子,并且对这个盒子设置【margin:0 auto】属性即可,例如【#t-warp{margin:0 auto;width:1000px}】。 本文操作环境:windows10系统、css 3、thinkpad t480电脑。 我们要让整个…

    2025年12月24日
    000
  • css如何增加下划线

    css增加下划线的方法是,给文本设置text-decoration属性,并且设置属性值为underline即可,例如【h3 {text-decoration:underline;}】。 本文操作环境:windows10系统、css 3、thinkpad t480电脑。 要给一段文本添加下划线,或者是…

    2025年12月24日
    000
  • css如何去掉滚动条样式

    css去掉滚动条样式的方法是,给滚动条设置【overflow:hidden】样式,将滚动条完全隐藏即可,例如【::-webkit-scrollbar {display: none; /* Chrome Safari */}】。 本文操作环境:windows10系统、css 3、thinkpad t4…

    2025年12月24日
    000

发表回复

登录后才能评论
关注微信