CSS Div链接文本下划线悬停

时间:2014-01-21 20:49:38

标签: html css css3 hyperlink hover

我有一个像这样简单的div ......

<a href="#">
  <div class="promo-box promo-1">
    <div class="promo-content">
     <h2>Heading here</h2>
     <p>Text content here.</p>
    </div>
  </div>
</a>

...允许我在div悬停时更改背景颜色。 工作得很好,但结果,我得到链接中显示悬停下划线的文本。 我已经尝试了几种方法来定位h2和p,但仍然无法摆脱悬停时的文本修饰。

关于我需要使用什么html元素来应用text-decoration的任何想法:none?

CSS这里......

.promo-box
{
text-align:center;
border-radius:5px;
padding:10px;
margin-bottom:20px;
min-height:240px;
}
h2
{
font-family:Lato, Arial, Helvetica, sans-serif;
font-weight:700;
color:#FFF;
font-size:20px;
text-decoration: none;
}
.promo-box p
{
font-family:'Open Sans', Arial, Helvetica, sans-serif;
font-weight:400;
color:#FFF;
font-size:16px;
line-height:16px;
}
.promo-1
{
background-color:#125595;
}
div.promo-1:hover;
}

3 个答案:

答案 0 :(得分:6)

您需要对链接应用文字修饰,而不是像这样h2p

a{
    text-decoration:none;
}

您无法将样式text-decoration:none应用于行内的元素 你可以为链接分配一个类,如果你没有想要应用于所有链接这个规则,就会为此做出类。

实施例 在css中插入一个类

.not-underline{
        text-decoration:none;
    }

更新您的html,为您的链接添加课程

 <a href="#" class="not-underline>
  <div class="promo-box promo-1">
    <div class="promo-content">
     <h2>Heading here</h2>
     <p>Text content here.</p>
    </div>
  </div>
</a>

DEMO

答案 1 :(得分:1)

您可以在CSS中的锚标记之前添加父选择器名称。

<div class='display'>
  <a href="#">
    <div class="promo-box promo-1">
      <div class="promo-content">
        <h2>Heading here</h2>
        <p>Text content here.</p>
      </div>
    </div>
 </a>
</div>

CSS:

.display a{
    text-decoration:none !important;
}

这是demo

答案 2 :(得分:0)

为避免悬停时出现文字下划线,请将其添加到您的css:

a:hover{
  text-decoration:none;
  }