html - 使用当前值进行 CSS 计算

标签 html css

如果我有一个像这样的设置类:

.MyClass {
  margin: 5px;
}

但是我想利用 calc 来设置组件的宽度,如下所示:

<button class="MyClass" style="width: calc(25% - 10px)"></button>
<button class="MyClass" style="width: calc(25% - 10px)"></button>
<button class="MyClass" style="width: calc(25% - 10px)"></button>
<button class="MyClass" style="width: calc(25% - 10px)"></button>

<button class="MyClass" style="width: calc(75% - 10px)"></button>
<button class="MyClass" style="width: calc(25% - 10px)"></button>

<button class="MyClass" style="width: calc(20% - 10px)"></button>
<button class="MyClass" style="width: calc(30% - 10px)"></button>
<button class="MyClass" style="width: calc(20% - 10px)"></button>
<button class="MyClass" style="width: calc(30% - 10px)"></button>

有没有办法让它变得更加动态?这样我就可以在类中编辑边距,然后我不需要在其他地方编辑 10px (因为我有 100 多个按钮)。我希望有这样的事情:

calc(25% - margin)

最佳答案

谢谢大家的回答。我相信这是目前最简单的解决方案:

:root {
    --margin: 5px;
    --marginDouble: var(--margin) * 2;
}

.MyClass {
  margin: 5px;
}

calc(25% - var(--marginDouble))

关于html - 使用当前值进行 CSS 计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51078935/

相关文章:

jquery - Flexslider 幻灯片不会在 Firefox 和 Chrome Canary 上显示

html - 按钮悬停动画背景颜色未完全填充

html - Font Awesome 不显示 JSF 应用程序中的所有图标

css - 创建 CSS 网格布局

html - Bootstrap 背景在 CSS 中不起作用,位置 : fixed also not working

java - Bootstrap 追加 div

javascript - 使用绝对位置定位 TD 的 child

html - CSS 多个 div 样式

javascript - 为什么我的 JS 移动导航在我的所有页面上都有效,但只有一个?

jquery - Hole li sort by one div with jquery