【问题标题】:Is there a way to get the set width of the current element in SASS? [duplicate]有没有办法在 SASS 中获取当前元素的设置宽度? [复制]
【发布时间】:2014-08-11 09:32:30
【问题描述】:

Tp 中心绝对定位的元素我必须将当前宽度分成两半并将其设置为负左边距值。但我不想这样做:

#elem {
    width: 75px;
    margin-left: -(75/2)px;
}

从现在开始,如果我更新宽度,我必须在 2 个地方更新它。是否可以在 SASS 中以某种方式引用当前选择器的设置宽度?

伪代码:

#elem {
    width: 75px;
    margin-left: -(this.width/2)px;
}

【问题讨论】:

    标签: css sass


    【解决方案1】:

    我将建议与@GEspinha 相同的方法,但如果您要对许多不同的元素执行此操作,那么使用 mixin 可能是值得的:

    @mixin absolute-width($width) {
        margin-left: -($width/2);
        width: $width;
    }
    
    #elem {
        @include absolute-width(75px);
    }
    
    #elem2 {
        @include absolute-width(50px);
    }
    

    【讨论】:

      【解决方案2】:

      最简单、最灵活的方法是创建一个变量并在类中使用它。 在 SASS 中仍然无法定位元素的特定属性值。

      $var: 75px;
      
      #elem {
          width: $var;
          margin-left: -($var/2);
      }
      

      【讨论】:

        猜你喜欢
        • 2016-03-16
        • 2012-11-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多