在 webstorm 中更新多个供应商前缀样式

Update multiple vendor prefix styles in webstorm

在 Webstorm 10 中,您可以使用内置的 emmet 插入所有供应商前缀样式。例如,您输入 -border-radius 后跟 TAB 键,它会自动为您创建供应商特定的样式。然后你可以输入例如。 10px 并将样式应用于所有供应商前缀。

我的问题是,如果我想在以后更新样式,有没有办法只更新一个地方并将其应用到其余地方?

希望这是有道理的。

谢谢。

嗯直接在CSS没有捷径。但是(并不特定于 webstorm,因为我从未尝试过)你可以使用 LESS http://lesscss.org/features/.

基本上 LESS 是 CSS 的预处理器,您可以在 LESS 文件中定义变量(例如您的 -border-radius 属性),然后在处理 LESS 文件时变量被定义取代。例如

@border-radius: 10px;

.my-class{
   border-radius: @border-radius;
}

结果为

.my-class{
    border-radius: 10px;
}

还有许多其他很棒的功能,但在您的具体情况下,您甚至可能想要使用 Parametric Mixin。这些允许您使用变量定义自定义样式。示例几乎正是您要查找的内容,例如(取自参考资料)。

.border-radius(@radius) {
  -webkit-border-radius: @radius;
     -moz-border-radius: @radius;
          border-radius: @radius;
}

并称为:

#header {
  .border-radius(4px);
}
.button {
  .border-radius(6px);
}

现在您可以使用 LESS 多种不同的方式,将您的文件即时 css 预处理或作为部署的一部分进行处理。

这是为 WebStorm

找到的参考

@Nico 是对的 - CSS 像 Less 和 SASS 这样的预处理器非常适合这类事情 - 它们可以帮助你不必重复自己。

如果您坚持使用 CSS,WebStorm 具有 多行编辑,因此一种方法是按住 Alt 键并在每个 10px 值之前单击。您将在单击的每个点处生成一个新光标,然后您可以改写新值,这将更改所有光标。

我很欣赏这不像您首先创建多个供应商前缀行那样巧妙。您可能会发现重新创建整个块会更快。