仅使用CSS是否可以基于类名设置属性?

科兹

假设我有一些CSS,例如:

.modal-350 {
    width: 350px;
}
.modal-400 {
    width: 400px;
}
.modal-500 {
    width: 500px;
}

等。仅使用CSS是否可以仅从类名称设置宽度(或其他属性)?

我知道在javascript中这很容易,而且我也可以使用:

.modal-auto {
    display: inline-block;
    width:auto;
}

这不是生产代码,我只是很好奇。

布拉姆·范罗伊

不会。即使我们可以在CSS中使用变量,也只能在属性值中使用,而不能在选择器名称中使用。因此,像这样将无法正常工作:

.modal-$size {
    width: ${size}px;
}

但是,您可以使用CSS预处理程序(如LESSSASS),并根据给定的大小自动生成此类规则。

一个SASS示例:

$modal-sizes: 50 100 200 500;

%modal-default {
  border-radius: 50%;
  color: red;
  background: green;
  border-color: blue;
}

@mixin modals {
  @each $size in $modal-sizes {
      .modal-#{$size} {
        @extend %modal-default;
        width: #{$size}px;
      }
  }
}

@include modals;

它将编译为:

.modal-50, .modal-100, .modal-200, .modal-500 {
  border-radius: 50%;
  color: red;
  background: green;
  border-color: blue;
}

.modal-50 {
  width: 50px;
}

.modal-100 {
  width: 100px;
}

.modal-200 {
  width: 200px;
}

.modal-500 {
  width: 500px;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

是否可以仅覆盖CSS类中的<strong>属性?

是否可以基于邮件类在Outlook 2010中设置规则?

是否可以在 CSS 的类中设置一个类?

CSS:是否可以使用IMG Alt属性进行样式设置?

是否可以使用 jQuery 为 css clip-path 属性设置动画?

是否可以在 HTML 中使用 data-* 属性来设置 CSS 中的宽度?

div是否可以使用基于像素的边距填充整个视口,而不使用CSS3 calc属性?

是否可以通过仅使用Konva.Rect类属性在Konva.Rect类中定义文本?

gtkmm是否可以以编程方式更改类的CSS属性?

是否可以使用基于默认类中的基于 Javascript 原型的类?

是否可以设置CSS属性以使字符不可见?

是否可以仅使用 HTML 为 SVG 文件设置动画

是否可以将FIRStorageUploadTask设置为仅使用WiFi连接?

是否可以仅使用css将div的高度设置为容器减去另一个div的高度?

如果仅使用CSS取消选中所有特殊样式,是否可以将其设置为特殊样式?

是否可以仅使用 css 更改选择空颜色

是否可以使用仅CSS的容器包装器?

是否可以仅使用CSS动画化对innerHTML的更改?

是否可以仅使用CSS重新创建字幕?

是否可以仅使用CSS定位<p>&nbsp; </ p>?

如何基于复杂的方法设置类名?

是否可以使用基于类的视图而不是基于函数的视图w?

是否可以使用AutoMapper填充基类的属性?

是否可以重写超类的属性设置器而无需重新定义属性

聚合物1.0:是否可以使用“布局”作为属性而不是CSS类或在类属性中使用属性序列化?

是否可以限制打字稿对象仅包含其类定义的属性?

是否可以创建仅接受具有特定属性的类型的通用类

设置仅公开属性的模拟(Moq)类

是否可以将[JsonIgnore]设置为默认值并且仅注释我想要的属性?