惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
H
Help Net Security
量子位
The Cloudflare Blog
博客园 - Franky
博客园 - 聂微东
博客园 - 司徒正美
Last Week in AI
Last Week in AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
有赞技术团队
有赞技术团队
罗磊的独立博客
GbyAI
GbyAI
雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
Martin Fowler
Martin Fowler
S
SegmentFault 最新的问题
美团技术团队
阮一峰的网络日志
阮一峰的网络日志
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
U
Unit 42
MongoDB | Blog
MongoDB | Blog

张鑫旭-鑫空间-鑫生活

1分钟速度了解text-align match-parent声明 « 张鑫旭-鑫空间-鑫生活 光标的形状也能设置了,就是CSS caret-shape属性 « 张鑫旭-鑫空间-鑫生活 pretext与文字四面环绕效果的实现 « 张鑫旭-鑫空间-鑫生活 JSON.rawJSON方法的作用是什么? « 张鑫旭-鑫空间-鑫生活 如何使用CSS判断鼠标从哪个方向进入元素? « 张鑫旭-鑫空间-鑫生活 借助mediabunny纯JS实现视频水印、剪裁、合成等功能 « 张鑫旭-鑫空间-鑫生活 务必谨慎使用JS WeakRef弱引用 « 张鑫旭-鑫空间-鑫生活 CSS六边形头像的实现与蜂巢布局 « 张鑫旭-鑫空间-鑫生活 CSS corner-shape与背景底纹技术 « 张鑫旭-鑫空间-鑫生活 浅学WebTransport API:下一代Web双向通信技术 « 张鑫旭-鑫空间-鑫生活 HTML dialog元素新支持了closedBy属性 « 张鑫旭-鑫空间-鑫生活 HTML interestfor属性与悬停popover交互效果 « 张鑫旭-鑫空间-鑫生活 CSS3模拟window7炫酷界面效果展示 « 张鑫旭-鑫空间-鑫生活 图片旋转+剪裁js插件(兼容各浏览器) « 张鑫旭-鑫空间-鑫生活 纯js无图片无外链CSS图片幻灯片播放插件 « 张鑫旭-鑫空间-鑫生活 CSS border三角、圆角图形生成技术简介 « 张鑫旭-鑫空间-鑫生活 CSS “渐进增强”在web制作中常见应用举例 « 张鑫旭-鑫空间-鑫生活 让IE6/IE7/IE8浏览器支持CSS3属性 « 张鑫旭-鑫空间-鑫生活 jQuery – 高亮动态显示页面HTML代码插件 « 张鑫旭-鑫空间-鑫生活 翻译 – 逐渐消失的Flash网站 « 张鑫旭-鑫空间-鑫生活 CSS reset的重新审视 – 避免样式重置 « 张鑫旭-鑫空间-鑫生活 新浪微博插入话题后部分文字选中的js实现 « 张鑫旭-鑫空间-鑫生活 JavaScript实现http地址自动检测并添加URL链接 « 张鑫旭-鑫空间-鑫生活 CSS实现兼容性的渐变背景(gradient)效果 « 张鑫旭-鑫空间-鑫生活 CSS content内容生成技术以及应用 « 张鑫旭-鑫空间-鑫生活 CSS gradient渐变之webkit核心浏览器下的使用 « 张鑫旭-鑫空间-鑫生活 CSS渐变之CSS3 gradient在Firefox3.6下的使用 « 张鑫旭-鑫空间-鑫生活 区分IE8/IE7/IE6及其他浏览器-CSS “\9″hack « 张鑫旭-鑫空间-鑫生活 CSS实现跨浏览器兼容性的盒阴影效果 « 张鑫旭-鑫空间-鑫生活 CSS3&HTML5各浏览器支持情况一览表 « 张鑫旭-鑫空间-鑫生活
好消息,CSS text-underline-offset可以用起来了 « 张鑫旭-...
张鑫旭,zhangxinxu · 2021-02-17 · via 张鑫旭-鑫空间-鑫生活

这篇文章发布于 2021年02月17日,星期三,17:34,归类于 CSS相关。 阅读 25876 次, 今日 22 次 一条评论

by zhangxinxu from https://www.zhangxinxu.com/wordpress/?p=9857
本文欢迎分享与聚合,全文转载就不必了,尊重版权,圈子就这么大,若急用可以联系授权。

线条图案

关于下划线和文字重叠的问题,就是下图所示的问题:

微软雅黑文字下划线重叠

我以前专门写文章介绍过,详见:“解决文字和text-decoration:underline下划线重叠问题”。

里面介绍了N种解决方法。

现在,上面文章中的那些方法再也不需要了,因为浏览器提供了原生的解决方法,那就是text-underline-offset属性,随着Chrome 87开始完全支持,这个CSS属性可以用起来了。

一、text-underline-offset简介

text-underline-offset属性可以用来设置下划线偏移位置。

这里有个demo,大家可以感受下效果,您可以狠狠地点击这里:text-underline-offset下划线偏移demo

拖动滑杆后,可以看到类似下图的下划线位置移动效果:

text-underline-offset效果GIF

语法

text-underline-offset属性的语法如下:

text-underline-offset: auto | <length> | <percent>

其中:

auto
默认值。
<length>
长度值。
<percent>
百分比值。百分比是相对于1em大小计算的。因此,text-underline-offset:100%等同于text-underline-offset:1em

二、细节与特性说明

以下是几个细节特性。

  1. text-underline-offset属性不是text-decoration的缩写属性之一,是独立的CSS属性。
  2. 只有下划线的时候text-underline-offset属性才有效,删除线和上划线都是无效的。例如下面两种下划线设置text-underline-offset属性是无效的:
    /* 应用text-underline-offset无效 */
    text-decoration: through;
    text-decoration: overline;
  3. text-decoration下划线效果具有父子元素互不干涉、同时累加的特性,因此,如果父元素设置了下划线,然后部分子元素的下划线位置偏移,则下面的CSS语句是无效的:
    p {
        text-decoration: underline;
        text-underline-offset: 0.5em;
    }
    p span {
        text-underline-offset: 1.5em; /* 无效 */
    }

    需要子元素明确声明具有下划线,例如:

    p {
        text-decoration: underline;
        text-underline-offset: 0.5em;
    }
    p span {
        text-decoration: underline;
        text-underline-offset: 1.5em; /* 有效 */
    }

兼容性

目前text-underline-offset属性所有现代浏览器均已支持,由于本身就属于渐进增强特性,因此,可以在实际项目中放心使用。

具体兼容性参见下面截图:

text-underline-offset兼容性

可以看到,距离我写下这篇文章,Chrome支持不过数月时间,所以标题才说“好消息”,毕竟现在是Chrome的天下。

三、结语

目前,下划线的颜色、样式(例如波浪线)、位置等都有对应的CSS属性可以设置,详见我多年前介绍的这篇文章:“了解CSS3 text-decoration波浪线等新特性”。

好,关于text-underline-offset属性其他就没有什么好说的了。

感谢您的阅读,欢迎补充更多关于text-underline-offset属性的信息。

本文为原创文章,欢迎分享,勿全文转载,如果实在喜欢,可收藏,永不过期,且会及时更新知识点及修正错误,阅读体验也更好。
本文地址:https://www.zhangxinxu.com/wordpress/?p=9857

(本篇完)