我将.jumbotron
类别的不透明度设置为opacity: 0.9;
,并且其子元素经过。在这种情况下,如何设置特定的子元素来覆盖父级的属性值。我尝试使用!important
,.jumbotron a
,.jumbotron p + p
,.jumbotron nth:child(3)
,但他们都没有完全工作。它会将按钮更改为小于0.9的较低不透明度,但不是1,它假定为实心或换句话说不显示透明度。有没有其他办法可以解决这个问题?下面是我尝试使用对焦代码:如何覆盖父母的CSS属性并将其应用于特定的子元素属性?
CSS:
.jumbotron{
background-color: white;
color:black;
opacity:0.9;
border-radius:0px 0px 10px 10px;
}
.jumbotron a, .jumbotron p + p, .jumbotron :nth-child(3){
opacity: 1 !important;
}
HTML:
<div class="jumbotron">
<h1 style="color:black;">Welcome!</h1>
<p>We're an awesome company that creates virtual things for portable devices.</p>
<p><a class="btn btn-primary btn-lg" role="button" href="about.html">Learn more</a></p>
</div>
替代方法解决方案:
看样子你不能覆盖的不透明度价值当一个孩子的元素父母的元素值已被设置。例如,.jumbotron
(父级)设置为opacity:0.9
和.jumbotron p + p
(第2个子元素)[或任何其他用于覆盖该值的值]设置为opacity: 1 !important
,如我在上面的代码中所看到的那样无效!设置它< 1将工作。但是,在其他css属性,如color
,margin
等,它将覆盖。有了这样说,一个解决方法是专门把按钮出.jumbotron
的,并与相应的CSS属性的新DIV,如下面所示:
#divbtn{
position:absolute; /*type of position to freely move the element about*/
top:290px;
margin-left:30px;
}
<!--opacity cannot be overridden on a child element when the parent's element is set, so I made a new div outside of .jumbotron and make it appear as if it's in .jumbotron without opacity being affected.-->
<div id="divbtn">
<p><a class="btn btn-primary btn-lg" role="button" href="about.html">Learn more</a></p>
</div>
抓住了一件错事,你应该在写'nnth:child'的时候写''nth-child' ..这是完全错误的。 –
感谢您的支持! – TheAmazingKnight
是否可以从jumbotron中取出按钮并将其相对或绝对定位? – otherDewi