gpt4 book ai didi

html - 有没有办法让这个 ID 加上后代 CSS 规则不那么具体?

转载 作者:行者123 更新时间:2023-11-28 10:24:33 24 4
gpt4 key购买 nike

我一直在使用 ID 加后代样式规则来为 div 的所有后代提供无填充和无边距。但我注意到它比 ID 选择器中的样式更具体。

我有多个 div。有没有办法让它不那么具体?

在下面的示例中,由于 ID+* 更具体,因此未应用填充和边框:

#list1item1 {
padding-left: 10px;
outline: 1px dashed green;
}

#list2item1 {
padding-left: 20px;
outline: 1px dashed blue;
}

#GroceryList1 {
left: 40px;
top: 20px;
position: absolute;
}

#GroceryList2 {
left: 200px;
top: 20px;
position: absolute;
}

#GroceryList1 * {
margin: 0;
padding: 0;
outline: none;
}

#GroceryList2 * {
margin: 0;
padding: 0;
outline: none;
}
<div id="GroceryList1">
<ol>
<li id="list1item1">Bread
<li>Stick of Butter
<li>Gallon of milk
</ol>
</div>

<div id="GroceryList2">
<ol>
<li id="list2item1">Bread
<li>Stick of Butter
<li>Gallon of milk
</ol>
</div>

有没有办法在不切换到类的情况下选择常规 ID 选择器更具体的 div 的所有后代?

最佳答案

您可以使用以 GroceryList 字符串(但不是字符串后面的数字)开头的属性选择器。

[id^=GroceryList] * {
margin: 0;
padding: 0;
outline: none;
}

这不会覆盖您定义的更具体的填充规则。

#list1item1 {
padding-left: 10px;
outline: 1px dashed green;
}

#list2item1 {
padding-left: 20px;
outline: 1px dashed blue;
}

#GroceryList1 {
left: 40px;
top: 20px;
position: absolute;
}

#GroceryList2 {
left: 200px;
top: 20px;
position: absolute;
}

[id^=GroceryList] * {
margin: 0;
padding: 0;
outline: none;
}
<div id="GroceryList1">
<ol>
<li id="list1item1">Bread
<li>Stick of Butter
<li>Gallon of milk
</ol>
</div>

<div id="GroceryList2">
<ol>
<li id="list2item1">Bread
<li>Stick of Butter
<li>Gallon of milk
</ol>
</div>

关于html - 有没有办法让这个 ID 加上后代 CSS 规则不那么具体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56843174/

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