繁体   English   中英

如何编辑不包含H1标签的div的CSS?

[英]How to edit the CSS of a div that does not contain a H1 tag?

有两个div:

<div class="test">
<h1>This is a test</h1>
<p>Welcome to the test</p>
</div>

<div class="test">
<p>Welcome to the test</p>
</div>

如您所见,有两个div属于同一类,但是,一个div带有H1标签,另一个div没有。

CSS

.test {
font-size: 20px;
color: #fff
}

上面显示了div test的CSS。

我想做的是将其他CSS应用于不包含H1标签的div。

如果div包含H1标签:

  • 没做什么

如果div不包含H1标签:

  • 将以下CSS应用于该特定div

font-size: 30px;

 $('.test:not(:has(h1))').css('font-size', '30px'); 
 .test { font-size: 20px; color: #000; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <div class="test"> <h1>This is a test</h1> <p>Welcome to the test</p> </div> <div class="test"> <p>Welcome to the test</p> </div> 

您可以将选择器与:not:has一起使用

$('.test:not(:has(h1))').css('font-size', '30px');

并不是最好的处理方式,但是如果您不能编辑html,则可以通过以下操作来定位CSS:

http://jsfiddle.net/42amv1xj/

.test {
  font-size: 30px;
  color: #fff;
}

.test h1,
h1 ~ p {
    font-size: 20px;
}

不过,这真是太不可思议了!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM