html - 有没有一种方法可以在考虑由于 *ngIf 而没有显示的元素的同时使用最后一个类型?
问题描述
我在一列中有许多重复的元素,我希望能够设置最后一个元素的样式并减少其底部边距,但这应该只发生在最后一个元素上。它上面的元素应该有更大的下边距。
但是,这些元素中的任何一个都可以使用 *ngIf 进行反渲染,因此我需要一种方法来确定最后一个元素是否与选择器匹配,以及它是否可见,如果是则减少边距。
<div *ngIf="display1" class="element">Element</div>
<div *ngIf="display2" class="element">Element</div>
<div *ngIf="display3" class="element">Element</div>
<div *ngIf="display4" class="element">Element</div>
.element {
margin-bottom: 5rem;
}
.element:last-of-type:visible {
margin-bottom: 1rem;
}
显然visible
不是一个伪类,但我需要一些能够提供这种功能的东西,同时最好不使用 Javascript 来实现它。
解决方案
这更像是一个 CSS 选项,您可以使用 css 伪选择器last-child - 在您的示例中,如果您有一个包含元素,您可以使用具有足够特定规则的 last-child 来仅选择您想要的正确元素像(任何不是由 ngIf 创建的都不会被这个选择器选择)。
如果您提供更多的html,我将能够给出一个更具体的例子
推荐阅读
- arrays - 无法将类型“[ArrayImages]”的值转换为预期的参数类型“[UIImage?]”
- python - 在 python 3 中获取 REST API 服务器响应时间
- excel - 对文件夹中的所有文件运行 excel 宏脚本
- r - R Plotly - 带有条形总数的堆叠条形图
- c# - 再次调用事件时如何中止先前的事件执行?
- android - React Native - 动画值的 getTranslateTransform() 在 Android 虚拟设备上出错
- libgdx - 需要一种方法从组织者那里获得象征性的崩溃,以便使用 robovm 框架移植到 ios 的游戏
- java - Twilio - 出站呼叫和检索用户输入而无需启动服务器
- powershell - 获取员工文件夹中所有特定空子文件夹的列表
- elasticsearch - 通过无痛脚本访问由分隔的有效负载令牌过滤器存储的有效负载数据