为什么我不能删除背景附件属性?

因此,我尝试使用最大宽度为 1024 像素的媒体查询删除背景附件属性。background-attachment: none除了我的 devtools 闪烁错误并且该属性被划掉之外,我只是通过这样做来做到这一点?有任何想法吗?


https://jsfiddle.net/dfwg2nbv/1/


const ham = document.querySelector('.ham-menu');

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

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

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

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

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


header.style.removeProperty('background-attachment');


//detect mobile

// if ("ontouchstart" in document.documentElement) {

//   removeProps(header);

//   removeProps(promise);

//   removeProps(services);

//   removeProps(testimony);

// }


ham.addEventListener('click', animateMenu);


function animateMenu() {

    nav.classList.toggle('hamburger-open');

}


// function removeProps(node) {

//  node.style.removeProperty('background-attachment');

//  node.style.removeProperty('background-size');

// }


子衿沉夜
浏览 155回答 3
3回答

一只斗牛犬

您正在尝试修改样式对象(它只反映通过style属性设置的样式,而不是通过样式表),因此它没有设置在那里以将其删除。您可以通过将其设置回默认值scroll来覆盖它。header.style.backgroundAttachment='scroll';

不负相思意

none不是该background-attachment属性的有效值。此外,这不是您使用removeProperty. 这不是style.您可以做的是将其设置为您尝试从内联样式中删除该属性的空白值,例如:header.style.backgroundAttachment = '';或者您可以将其设置为初始值,如果您在样式表中设置了其他内容,例如:header.style.backgroundAttachment = 'initial';或者只是将它设置为另一个特定的值,类似于上面的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript