html - CSS 与 :After :NTH-Child
问题描述
.app-btn {
font-size: 0px !important;
}
.app-btn:after {
content: '+2500';
visibility: visible;
font-size: 15px !important;
}
.app-btn:after:nth-child(1) {
content: "+18000";
}
.app-btn:after:nth-child(2) {
content: "+14000";
}
<div class="app" data-url="#">
<button class="app-btn">CHANGE</button>
</div>
<div class="app" data-url="#">
<button class="app-btn">CHANGE</button>
</div>
<div class="app" data-url="#">
<button class="app-btn">CHANGE</button>
</div>
解决方案
这只是使用的 CSS 选择器的问题。这些与按钮不匹配:
.app-btn:after:nth-child(1) { ... }
.app-btn:after:nth-child(2) { ... }
事实上,每个按钮都是父级的唯一子级,div
因此选择器实际上没有意义。
相反,nth-child
在父 div 上使用 (或者,可能是nth-of-type
),然后将样式应用于后代app-btn
:
.app:nth-child(1) > .app-btn:after { ... }
.app:nth-child(2) > .app-btn:after { ... }
以下片段显示了这一点:
.app > .app-btn {
font-size: 0px !important;
}
.app > .app-btn:after {
content: '+2500';
visibility: visible;
font-size: 15px !important;
}
.app:nth-child(1) > .app-btn:after {
content: "+18000";
}
.app:nth-child(2) > .app-btn:after {
content: "+14000";
}
<div class="app" data-url="#">
<button class="app-btn">CHANGE</button>
</div>
<div class="app" data-url="#">
<button class="app-btn">CHANGE</button>
</div>
<div class="app" data-url="#">
<button class="app-btn">CHANGE</button>
</div>
推荐阅读
- javascript - 需要一个 ng-pattern 的正则表达式,它应该是浮点数并且总是大于 0 但不应该允许 0
- docker - Kubernetes Manifest 文件不会从 YML 转换为 JSON
- php - 如何修复 Laravel 5.8 中 twillio API SMS 验证中的客户端错误?
- r - 如何比较由另一列分割的两个数据框中的列并标记重复条目?
- drupal-7 - 批量完成消息未显示
- spark-structured-streaming - 在 Spark Structured Streaming JAVA 中合并两个具有不同列的数据集
- c# - Acumatica ERP 中新自定义字段的值未保存到数据库
- android - 如何检查领域数据库中的数据是否超过 5 分钟?
- excel - 如果列值匹配,则将 TRUE 粘贴到下一个对应列中
- python - 在 tensorflow 中使用估计器 API 进行训练时出错