【发布时间】:2023-01-07 01:36:21
【问题描述】:
我习惯于使用 box-shadow 作为为文本标题提供背景的一种方式,并利用将 box-shadow 应用于内部标签的技巧,为标题提供整洁的“带填充背景”高亮效果在多行上,背景对齐到跨度的末尾而不是标题块元素。以下代码用于创建如下图所示的效果。
h1.highlight span {
box-shadow: 0 0 0 16px #fff000;
background-color: #fff000;
line-height: 1.6;
box-decoration-break: clone;
}
<h1 class="highlight"><span>Highlight text<br />goes here</span></h1>
然而,在过去的几个月里,我注意到这个技巧不再有效,当标题转到第二行时,框阴影效果再次中断,如下所示:https://codepen.io/georgiacobrien/pen/LYBbJge
首先,有谁知道为什么现在以不同的方式呈现它,以及 2. 是否有更好的方法可以使跨多行的标题获得相同的效果?
【问题讨论】:
-
不确定你的确切意思/它应该是什么样子,但
span是一个内联元素,所以你可能想添加display: block;或display: inline-block;到你的 CSS(?) -
@Johannes 我用一张图片更新了我的问题以更好地说明:如果我将它更改为块或内联块,背景会像一个大黄色框一样放在整个东西后面,而不是像图片中那样剪裁到文字 I '补充道。我使用这个技巧多年但不再奏效,所以想看看如何轻松地重现相同的外观。