T J*_*T J 11
您可以尝试使用::after伪元素:
a {
position: relative;
text-decoration: none;
}
a:hover::after {
content: "";
position: absolute;
left: 25%;
right: 25%;
bottom: 0;
border: 1px solid black;
}Run Code Online (Sandbox Code Playgroud)
<a href='#'>Demo Link</a>Run Code Online (Sandbox Code Playgroud)
这是我刚才想到的,看看你的想法.所以我们:after在文本下使用并创建一条线.这仅在父级具有宽度(用于居中)时才有效.
HTML:
<div>Test</div>
Run Code Online (Sandbox Code Playgroud)
CSS:
div {
width: 30px;
}
div:hover:after {
content: "";
display: block;
width: 5px;
border-bottom: 1px solid;
margin: 0 auto;
}
Run Code Online (Sandbox Code Playgroud)
更新的CSS:
div {
display: inline-block;
}
Run Code Online (Sandbox Code Playgroud)
不知道为什么我没有想到这一点,但你可以使用inline-block它让它居中,而父母没有宽度.
这是一个使用相同方法的链接,只是让你感到困惑.
所以我现在被告知我甚至应该指出最显而易见的事情,所以这里只是为那些不知道width可能是百分比的人提供更新.
width: 70%;
Run Code Online (Sandbox Code Playgroud)
将宽度更改为5px,70%因此它将随文本的宽度扩展.