CSS - 悬停时文本移动

时间:2011-12-13 02:51:29

标签: html css hover move

我已经在这里待了大约一个小时,似乎无法抓住它 每当我将鼠标悬停在此文本上时(我想为其悬停一个背景颜色),文本会随着bgcolor一起移动。 这是我得到的:

        #innerheader ul {
            list-style:none;
            margin:0;
            padding:0;
        }
        #innerheader li {
            display:block;
            float:left;
            height:25px;
            margin:0 2px;
            padding:15px 10px 0 10px;
            color:#FFFFFF;
            font-weight:bold;
            font-size:10px;
            text-transform:uppercase;
        }

        #innerheader li a, 
        #innerheader li a:link, 
        #innerheader li a:visited, 
        #innerheader li a:active {
            color:#FFFFFF;
            text-decoration:none;
        }
        #innerheader li a:hover {
            background-color: blue;
            padding: 10px 10px 10px 10px
        }

5 个答案:

答案 0 :(得分:11)

删除悬停声明中的填充。或者只是在悬停状态之前将填充移动到锚点,如下面的代码所示。

文本移动的原因是锚点上没有填充,然后当你悬停时,就会出现填充。

#innerheader li a, 
    #innerheader li a:link, 
    #innerheader li a:visited, 
    #innerheader li a:active {
        color:#FFFFFF;
        text-decoration:none;
        padding: 10px;
    }
    #innerheader li a:hover {
        background-color: blue;
    }

答案 1 :(得分:1)

这是因为填充。删除它然后它会工作正常。

答案 2 :(得分:0)

摆脱填充,这就是导致它移动的原因。

答案 3 :(得分:0)

它正在移动,因为您正在更改悬停块中的填充。删除它,它应该没问题。

答案 4 :(得分:0)

你正在填充li a:悬停!当然它会改变文本。要解决此问题,您需要定义宽度和高度,并通过悬停时的填充量减少它们。或者将填充移动到非悬停状态。