小编Ale*_*fen的帖子

CSS:自动宽度变量计算

大家好 !

假设我有 2 个辅助类:

.w3-4 {
  width: calc((100% / 4) * 3);
}

// AND

.mr-10 {
  margin-right: 10px;
}
Run Code Online (Sandbox Code Playgroud)

你认为有一种自动的纯CSS方法可以从.mr-10宽度中减去边距值吗.w3-4

诸如此类的东西

.mr-10 {
  margin-right: 10px;

  // width calc
  width: calc(--width - 10px);
} 
Run Code Online (Sandbox Code Playgroud)

有很多方法可以使用 SASS 甚至 JS 来做到这一点,但我只是有点懒惰和好奇:)

感谢您的回答,

A。

html css helper

4
推荐指数
1
解决办法
3万
查看次数

在香草中切换样式

是否有任何原生 JavaScript 函数允许在元素上切换样式(而不是类)?

到目前为止,我正在使用这种脚本:

target.addEventListener('click', (e) => {
    target.classList.toggle('target--is-visible')
}
Run Code Online (Sandbox Code Playgroud)

按风格分:

target {
    visibility: hidden;

    &--is-visible {
        visibility: visible;
    }
}
Run Code Online (Sandbox Code Playgroud)

我很乐意被允许这样做:

target.addEventListener('click', (e) => {
    target.style.toggle.visibility = 'visible'
}
Run Code Online (Sandbox Code Playgroud)

编辑

三元运算符是我在可读性方面最接近的。

@GuyWhoKnowsStuff 发送的函数使用三元运算符,值得共享:

const div = document.querySelector('div');

function toggleStyle(el, prop, style1, style2) {
  el.style[prop] = el.style[prop] === style1 ? style2 : style1;
}

div.addEventListener('click', e => {
  toggleStyle(div, 'background', 'red', 'blue');
});
Run Code Online (Sandbox Code Playgroud)

感谢您的回答!

html javascript css

3
推荐指数
1
解决办法
913
查看次数

标签 统计

css ×2

html ×2

helper ×1

javascript ×1