gpt4 book ai didi

html - 覆盖嵌套 div 中的链接样式

转载 作者:太空宇宙 更新时间:2023-11-03 19:48:58 26 4
gpt4 key购买 nike

我在设置嵌套 div 中的链接颜色时遇到问题。链接以父 div 元素中链接的默认样式显示。

简而言之,假设我们有以下 HTML 代码:

<body>
<div id="message">
<div class="wrap">
<a href="...">Link 1</a>
<a href="...">Link 2</a>
<div class="website">
<div class="website-button">
<a href="...">Link 3</a>
<a href="...">Link 4</a>
</div>
</div>
</div>
</div>
</body>

要在 #message/wrap 容器中设置 Link 1Link 2 元素的样式,我使用:

        #message a:link { color: rgba(85, 165, 255, 1.0); }
#message a:visited { color: rgba(85, 165, 255, 1.0); }
#message a:hover { color: rgba(95, 185, 255, 1.0); }
#message a:active { color: rgba(95, 185, 255, 1.0); }

此外,我需要将 Link 3Link 4 链接设为白色。我以这种方式设计这些链接:

        .website-button a:link,
.website-button a:visited,
.website-button a:hover,
.website-button a:active {
color: #ffffff;
}

问题是我无法覆盖 .website-button 元素中的链接样式。无论我做什么,它们都会保持蓝色。

以下是我页面的摘录:

<html>
<head>
<style>
a { text-decoration: none; }
a:hover { text-decoration: underline; }
.wrap {
max-width: 800px;
margin: 32px auto;
padding: 0 24px;
}
#message {
overflow: hidden;
background: rgba(62, 72, 119, 1.0);
color: rgba(255, 255, 255, 1.0);
}
#message a:link { color: rgba(85, 165, 255, 1.0); }
#message a:visited { color: rgba(85, 165, 255, 1.0); }
#message a:hover { color: rgba(95, 185, 255, 1.0); }
#message a:active { color: rgba(95, 185, 255, 1.0); }
.website {
width: 100%; height: auto;
margin: 0.6rem 0 1.6rem 0;
}
.website-button {
width: 50%;
height: auto;
margin: 0 auto;
padding: 12px 18px;
background: #f50;
font-size: 1.8rem;
line-height: 2.0rem;
text-transform: none;
text-align: center;
font-weight: 700;
}
.website-button a:link,
.website-button a:visited,
.website-button a:hover,
.website-button a:active {
color: #ffffff;
}
</style>
</head>
<body>
<div id="message">
<div class="wrap">
<h3>Hello!</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
<h3>Twitter: <a href="https://twitter.com/zimnovich">ZimNovich</a></h3>
<div class="website">
<div class="website-button"><a href="https://soundcloud.com/zimnovich/mobirrel-radio-edit">Listen it on SoundCloud</a></div>
</div>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
<h3>Instagram: <a href="https://instagram.com/zimnovich">ZimNovich</a></h3>
</div>
</div>
</body>
</html>

http://codepen.io/anon/pen/evrgay

最佳答案

问题是您以 #message 开头的选择器的优先级高于以 .website-button 开头的选择器

这是为什么呢?好吧,每个选择器都被赋予了权重或优先级。你会看到当你去 1 类然后选择器的一个 1 元素时你基本上有一个分数(0,0,1,1)。当您使用 1 个 ID 和 1 个元素(#message 选择器)时,您的得分为 (0,1,0,1)。

使用得分较高的选择器。

如果您要更改您的 .website-button 选择器,以您的 id #message 开头,这会给他们一个分数 (0,1,1,1 ),它们将被使用。

这是一个方便的首字母缩略词,可以在编写 CSS 选择器时牢记在心。

ICE

  • (i) - 内联样式
  • - ID
  • C - 类
  • E - 元素

选择器中的每个 id 值 (0,1,0,0),每个类值 (0,0,1,0),每个元素值 (0,0,0,1)。每个桶的优先级都高于前一个桶。

Important to note: 1 class is stronger than 10 elements, and 1 id is stronger than 10 classes

-> http://vanseodesign.com/css/css-specificity-inheritance-cascaade/

关于html - 覆盖嵌套 div 中的链接样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42963475/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com