级联非继承属性(例如:(文本颜色)到网页中的子元素,而不显式地告诉子元素继承父元素
Cascade non-inherited properties(e.g. text color) to child elements in webpage without explicitly telling child elements to inherit from parent
是否有一种方法可以将非继承属性(如文本颜色)级联到网页中的子元素中,而不显式地告诉子元素从父节点继承
我正试图写一个小的应用程序,重新设计一个网页(例如:谷歌,msn.co.uk)。样式包括颜色、背景色,通过以下操作将样式注入正文
document.body.style.color='green';
元素,但在正文中包含自己的样式不继承的颜色,例如,div元素与自己的样式<div id="testing" style="color": blue">
仍然显示蓝色。
我目前的理解是,这是一个继承的问题,并不是所有的属性都自动继承自父容器,对于要继承的样式,一个人必须改变颜色继承做一些像
document.getElementById('testing').style.color='inherit';
在这种情况下,它将从body继承color。然而,在这种情况下,我必须遍历所有子元素,明确地告诉它们从父元素继承(我实际上可以将这些子元素设置为与body相同的颜色)
我猜这是一个继承问题,而不是一个特异性问题
我不知道是否有一种优雅的方式来做你想做的事情。但是:只是为了好玩,我尝试通过JS为<style>
元素编写CSS,这样我就可以在声明中使用CSS选择器并使用!important
规则。它似乎可以在Chrome上工作。Safari,不管怎样),但它有点俗气(但改变网站的样式总是有点俗气)
var overrides = document.createElement("style");
overrides.type = "text/css";
document.head.appendChild(overrides);
overrides.innerText = "body, body * { background: green !important }";
在开发者控制台尝试一下,Stack Overflow看起来就像圣帕特里克节!
再次强调,我还没有在Chrome之外测试过它&
相关文章:
- 两个指令创建新的继承的和隔离的作用域-元素得到哪个
- 没有预定义宽度的固定元素最初放在引导容器中,不会从父元素继承宽度
- 将 DOM 元素转换为具有所有继承的 JavaScript 类
- Javascript:创建不继承css的元素
- tagName没有在子视图中启动新的el元素;它继承自父视图
- 检查元素继承了哪些属性
- 使 HTML 元素从自定义对象继承事件
- 使用 jQuery 检查 DOM 元素的继承可见性
- 将元素保留在 DIV 中而不继承页面样式的最佳方法
- 如何创建一个独立的 DOM 元素?一个不从父母那里继承 css 等
- Js:创建继承自某个 js 类的 html 元素
- 将原型继承到 JavaScript 中的所有子元素
- 创建元素并使用继承的原型函数在加载时调用,而不是在单击时调用
- 如何使用JavaScript获得元素的实际继承CSS
- 如何获取具有继承宽度的元素的宽度
- Shadow DOM元素可以继承CSS吗?
- 如何从元素中删除所有继承和计算样式
- 是否有一个(polyfill)代码重置所有继承的CSS属性上的给定元素
- 级联非继承属性(例如:(文本颜色)到网页中的子元素,而不显式地告诉子元素继承父元素
- 在javascript中继承了DOM元素对象!这段代码有什么问题?