动态样式类名为何失效:嵌套与并列选择器的区别在哪里?

动态样式类名为何失效:嵌套与并列选择器的区别在哪里?

动态样式类名不起作用:嵌套与并列问题

在使用动态样式类名时,有时会遇到尽管触发事件但样式却没有改变的情况。这可能是由于使用了后代选择器而造成的。

以提供的代码为例:

为了解决这个问题,需要将与类编写为并列,而不是嵌套方式:

.content.active { padding-left: 65px; }

同级选择器与后代选择器

  • 同级选择器(B.A):选择与另一个元素(A)位于同一级别的元素。在这种情况下,使用点(.)作为选择器连接符,例如.content.active。
  • 后代选择器(A B):选择A元素内的所有B元素。在这种情况下,使用空格作为选择器连接符,例如.content .active。

在动态样式类名中,使用同级选择器更合适,因为它指定当content元素具有active类时应用样式,而不是当content元素包含active子元素时应用样式。

Sass/SCSS 同级写法

Sass/SCSS 中,可以使用&符表示同级关系:

&.active { padding-left: 65px; }

这将编译为.content.active { padding-left: 65px; }。

以上就是动态样式类名为何失效:嵌套与并列选择器的区别在哪里?的详细内容,更多请关注其它相关文章!