【发布时间】:2014-04-11 12:41:25
【问题描述】:
我希望能够将鼠标悬停在一个字母上,在本例中是 Paul 中的“P”并将其显示为白色,但是当我在 Web 浏览器中测试该站点时,悬停动作在鼠标触摸之前开始实际的文本。
图片显示了它在实际字母之前“悬停”的距离(距光标)。
我的代码有问题吗...
这是html代码:
<!DOCTYPE html>
<html>
<head>
<title>Paul</title>
<link rel="stylesheet" href="styles.css" type="text/css"/>
</head>
<body>
<div id="pbox">
<h2>P</h2><h1>aul</h1>
</div>
</body>
</html>
这是 CSS 代码:
body
{
background-color:#4b4b4b;
}
h1
{
font-family:cursive;
font-weight:500;
font-size:50px;
color:silver;
display:inline;
}
h2
{
text-decoration:none;
text-shadow:4px 0px 0px rgba(0,0,0,1);
color:#4b4b4b;
font-family:cursive;
font-weight:600;
font-size:75px;
display:inline;
padding:0px 13px 0px 0px;
}
h2:hover
{
color:#eeeeee;
}
#pbox
{
background-color:white;
width:62px;
height:450px;
top:0px;
left:5px;
border-radius:50px 0px;
padding:0px;
}
如果有人能指出我的错误并找到解决方法,我将不胜感激! 提前致谢。
【问题讨论】:
-
如果我不得不猜测它可能与您的字体大小有关。您的字母可能会在基线下方为“y”之类的字母“保留”一些空间。
-
@user2793390 正是如此。它与行高无关。
-
我不同意。它确实与行高有关。如果您降低行高,无论您使用什么字体大小,都可以规避“保留空间”的问题。因此,虽然它可能不能归因于线高,但它可以通过线高固定。更改字体大小会有所帮助,但只是任意的。特别是,~0.7 的行高非常接近字母。
-
@thesublimeobject 你试过添加
line-height吗?无论line-height设置为:jsfiddle.net/gRZFd -
抱歉。您必须先将其更改为 inline-block 而不是 inline 才能影响元素。