是否有可能或最佳做法是避免将课程放在嵌套在span
内的div
上?
我有一个刻板的'待办事项列表'学习项目,我需要在点击时直接浏览项目,但我还有一个span元素,后面会有一个删除按钮来删除整个{{1 }}
li
此刻,直通线显然也是针对跨度的,所以我想知道是否有一种简单的方法可以避免它没有黑客攻击,否则我猜我可能需要将文本单独设置{ {1}}并将直通课应用于<li><span class="deleteBtn">X</span> Birthday Cake</li>
的
答案 0 :(得分:1)
是否有可能或最佳做法是避免将一个类放在嵌套在div中的跨度上?
是的,这是可能的。
li > span{
/* styles */
}
这是最佳做法吗?不必要。我发现在div或spans中有子类是有帮助的。即使您不使用它们,也可以为您提供更好的控制,以便将来的开发可以让您的生活更轻松。
查看CSS选择器here,可以让您更好地了解可以实现的目标。关于上面的示例,li
元素的第一个子元素必须是该样式生效的范围。无论嵌套量如何,执行以下操作将适用于li
元素内的任何范围。
li span {
/* styles */
}
编辑:
在看到你的评论之后,我认为我所说的仍然存在,但你应该将你的内部文本包装在一个元素中,另一个span
应该这样做。
<li>
<span class="deleteBtn">X</span>
<span class="ItemText">Birthday Cake</span>
</li>
这将使您能够以下列方式添加CSS。
li > .ItemText{
<!-- styles -->
}
它可能看起来超过顶部,但就像我之前提到的它会给你更好的控制,我不认为这是不好的做法。
答案 1 :(得分:0)
这是我的解决方案!你可以使用&lt; div&gt;&lt; / DIV&GT;或者&lt; p&gt; / p&gt;标签如下:
<li><span class="deleteBtn">X</span><p class="to-do-list"> Birthday Cake</p></li>
然后将CSS应用于所有&lt; li> ,你只需要将它应用到.to-do-list类
希望这有帮助!如果您有任何问题,请随时告诉我!