有以下DOM结构:
文字内容
h1{
width:100%;
padding:20px;
}
要求:不能改变DOM结构,不能改变h1的已有样式;
实现: ---------- 文字内容 ----------- (左右两侧padding + 左右分割线宽度 + 文字内容宽度 = h1宽度)
左右侧分割线自动适应h1除文字内容以外的剩余空间,文字内容变化,分割线也应根据文字内容变长或缩短;
文字只占一行;
除了用span背景遮住h1伪类分割线,还有其他方法吗?
关键是这个自适应很难搞。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
用flex吧
https://jsfiddle.net/opym5zd6/
其实你 HTML 结构只需要
h1>span这样就够了大体思路是:
内层的
<span>设置背景色,用于遮挡外层
<span>画线,这里画线可以用伪元素,也可以用线性渐变渐变背景图用js去获取“文字内容”的宽度,然后计算两边分割线应在的p的宽度并设置,用最多的“-”填充,超出部分overflow:hidden
<fieldset >< legend>文本内容</legend></fieldset>
第一种方法(你的意思,好像是说不想用这一种)
第二种方法