Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 从::第一个字母中删除下划线_Css_Pseudo Element_Typography_Text Decorations - Fatal编程技术网

Css 从::第一个字母中删除下划线

Css 从::第一个字母中删除下划线,css,pseudo-element,typography,text-decorations,Css,Pseudo Element,Typography,Text Decorations,除了第一个字母外,我正在尝试在所有字母下面划线。我试图通过::first letter删除第一个字母的下划线,但未成功。为什么这在这里不起作用 <a class="sample underline letter-underline-none" href="https://twitter.com/ryanve" >@ryanve</a> 发件人: 文本装饰是跨子体文本元素绘制的。这意味着如果元素指定了文本装饰,则子元素不能删除装饰 (我的重点)。当然,在您的例子中没

除了第一个字母外,我正在尝试在所有字母下面划线。我试图通过
::first letter
删除第一个字母的下划线,但未成功。为什么这在这里不起作用

<a class="sample underline letter-underline-none"
   href="https://twitter.com/ryanve"
>@ryanve</a>
发件人:

文本装饰是跨子体文本元素绘制的。这意味着如果元素指定了文本装饰,则子元素不能删除装饰

(我的重点)。当然,在您的例子中没有真正的子元素(仅仅是第一个字母伪元素),但同样的逻辑也适用

也就是说,一些实验表明子元素可以添加自己的下划线(覆盖祖先的下划线),然后使用
文本装饰颜色指定该下划线的颜色。因此,在大多数情况下,你可以通过写一些类似的东西,将你想要的视觉效果整合在一起

.letter-underline-none::first-letter {
  text-decoration: underline;
  text-decoration-color: #FFF;
}
(调整
#FFF
部件以匹配预期的背景色)。不过,我不认为我会建议这样做,因为它似乎太可能出现奇怪的边缘情况,这些情况看起来比一开始的全下划线效果更糟糕。

来自:

文本装饰是跨子体文本元素绘制的。这意味着如果元素指定了文本装饰,则子元素不能删除装饰

(我的重点)。当然,在您的例子中没有真正的子元素(仅仅是第一个字母伪元素),但同样的逻辑也适用

也就是说,一些实验表明子元素可以添加自己的下划线(覆盖祖先的下划线),然后使用
文本装饰颜色指定该下划线的颜色。因此,在大多数情况下,你可以通过写一些类似的东西,将你想要的视觉效果整合在一起

.letter-underline-none::first-letter {
  text-decoration: underline;
  text-decoration-color: #FFF;
}

(调整
#FFF
部件以匹配预期的背景色)。不过,我不认为我会建议这样做,因为它似乎太可能出现奇怪的边缘情况,看起来比一开始的全下划线效果更糟糕。

答案不错!如果使用CSS变量,这种技术似乎是合理的,但在这种情况下,一个额外的元素似乎更安全,尤其是由于
@
的出色的黑客!回答得好!如果使用CSS变量,这种技术似乎是合理的,但在这种情况下,一个额外的元素似乎更安全,尤其是由于
@
的出色的黑客!