gpt4 book ai didi

css - 还有另一种方法可以用sass写这个吗?

转载 作者:太空宇宙 更新时间:2023-11-04 11:13:58 25 4
gpt4 key购买 nike

$styles: background #333, margin 20px, padding 10px

.factory
@each $style in $styles
#{nth($style, 1)}: nth($style, 2)

有没有另一种方法可以用 sass 来写这意味着同样的事情?谁能解释这段代码到底在做什么?它输出到以下 css:

.factory {
background: #333333;
margin: 20px;
padding: 10px;
}

我不明白这段代码在做什么。

最佳答案

让我们逐行分析:

$styles: background #333, margin 20px, padding 10px

这声明了全局变量 $styles 并为其分配了一个属性值对列表。

.factory

这构建了一个新的类选择器 .factory

  @each $style in $styles

这是 Sass 中的一个循环,遍历 $styles 列表并将每个列表条目一个一个地分配给变量 $style,因此在第一次迭代中它将具有值 background #333,在下一次迭代中 margin 20px,依此类推。

    #{nth($style, 1)}: nth($style, 2)

此行使用字符串插值 #{...} 和 Sass 列表的 nth 函数来构建 CSS 属性及其关联值。 background #333 是 Sass 中的列表本身(虽然只是空格分隔)并且 nth($style, 1) 给你 background,而nth($style, 2)@each 循环的第一次迭代中为您提供 #333

这为您提供了预期的输出。您为什么要寻找不同的方法来实现这一目标?

关于css - 还有另一种方法可以用sass写这个吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33384682/

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