當我們在開發網站過程中,可能會遇到要去掉某些頁面元素上的一些CSS樣式的需求。那么如何清除頁面所有指定的CSS呢?
/** * 清除元素上的所有CSS樣式 * @param {HTMLElement} element 需要清除CSS的元素 * @param {Array} cssProps 需要清除的CSS屬性列表 */ function clearElementCss(element, cssProps) { if (!element) return; if (!cssProps || cssProps.length === 0) return; cssProps.forEach((prop) =>{ element.style.removeProperty(prop); }); const children = element.children; if (children && children.length >0) { for (let i = 0; i< children.length; i++) { clearElementCss(children[i], cssProps); } } }
上面是清除元素上所有CSS樣式的函數代碼,接下來我們就可以使用該函數針對需要清除CSS的元素進行操作。
// 清除頁面中所有class為"target-class"的樣式 const elements = document.querySelectorAll('.target-class'); elements.forEach((el) =>{ clearElementCss(el, Object.keys(el.style)); });
以上代碼即可清除頁面中所有class為"target-class"的元素上的所有CSS樣式。
上一篇清理多余css樣式
下一篇添加css樣式的代碼