问题标签 [css-cascade]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
css - 覆盖所有 CSS 属性:未设置
对于我正在开发的 CSS 框架,我正在使用all: unset
,它本身可以正常工作:
但是,在某些情况下,我想“撤消”此规则的效果,如
但是,这显然不起作用,因为auto
for没有值all
。相反,我们有值inherit
and initial
,而不是“取消”该all
属性,而是具有不同的效果:将所有值恢复为其父值或初始值(我假设这意味着系统级默认值)。
为了完成我想要的,我目前正在做
例如,如果我想为多个伪类执行此操作,并且我更愿意覆盖该all: unset
属性,那么它工作得很好,但不是太可扩展?有什么办法吗?
javascript - CSS 样式属性留空
当 CSS 属性transform
为空时会发生什么,即
检查这个小提琴 - https://jsfiddle.net/e85odhjf/
在 javascript 部分,我将 left.style.transform="" 留在了 back() 函数中(由 onmouseout 控制),因此它使形状恢复到原始形式。
css - CSS作者类规则被元素浏览器本机规则覆盖
font-size
由类规则 ( .dropdown-menu
) 定义的 CSS 规则被内置浏览器元素规则 ( table
) 覆盖。这怎么可能?
我在使用PatternFly样式的Cockpit插件上工作。我的标签元素(屏幕截图中的选定行)太大font-size
,是从间接父元素继承的table
。该表令人惊讶地没有font-size
从其父元素(在定义div.dropdown
中.dropdown
定义)继承属性值,而是直接从浏览器样式表中获取。我想知道这怎么可能,它不违反 CSS 级联 - 使用浏览器定义而不是从父元素继承吗?
它在 Chrome 51 和 Firefox 46 中始终以这种方式工作。
这是简化的 JsFiddle 演示,似乎可以正常工作(即不同)。
css - 有没有办法回退到 CSS 中的非伪类样式?
如果我有一个其他人拥有代码的蓝色 div
我希望它在悬停时是红色的
但后来我希望能够添加一个类,让它回到它的非伪类状态:
是否有返回到伪类前状态的 CSS 选项?
Codepen 演示: http ://codepen.io/anon/pen/EyEWww
css - 有没有办法覆盖 CSS 规则以从本质上否定它?
如果我有一个classic.css
要覆盖的文件(在这种情况下,它来自用于 Python 的 Sphinx 文档:https ://docs.python.org/2.7/_static/classic.css )并且本质上是“撤消”规则,是有办法吗?
在这种情况下,有以下规则:
我想做的是
所以我可以在其中指定字体系列和颜色,body
并将其应用到任何地方,而无需使用!important
.
只是为了澄清一下:我的custom.css
which 以@import(classic.css);
Sphinx 文档开头,而不是本节中通常使用的两个<link rel="stylesheet" type="text/css">
元素<head>
。
css - 防止 CSS 继承到选定元素的子元素
我有一个由嵌套的 UL 和 LI 组成的菜单,例如:
我想为第一个的最后一个添加一个样式<li>
,<ul>
但不让它的子项(嵌套的<ul>
)继承它。
我试过了:
但这仍然是最后一个元素的样式。
有谁知道我如何只针对那 1 个元素(仅使用 CSS)?
html - 嵌套 CSS 类 – 子类覆盖父类?
目标是让元素的父级决定它的样式。所以.dark .light p
会有浅色文本、.dark p
深色文本和.light .dark .light p
浅色文本。
该p
元素甚至可能不是直接子元素,.dark
因此.light
会有.light .dark div.wrap div.inner p
深色文本。
由于 CSS 的级联特性,它似乎更喜欢最后一条规则。这甚至可能吗?
html - 为什么 * 在 CSS 中比属性继承更具体?
简而言之,我有一个具有这两种样式的页面:
页面结构如下:
你会期望“错误文本”是红色的,不是吗。但事实上,它在所有浏览器中都呈现为黑色。这是预期的行为吗?
我的第二个问题取决于这是否是预期的行为。如果是这样,那么为什么设计师会用“黑色”或其他颜色为他的整个网站上的每个元素着色,如果这意味着它不能在特定位置被继承覆盖?
- 编辑 -
这个问题是在您希望在整个网站上放置默认颜色的上下文中提出的,但是无论您想要什么,您都可以说“这整个部分继承了颜色#ffeeff”。例如,一个特殊的表格,包含在“表格”类的分隔符中。您不想用“white-text”之类的特殊类标记表单的每个子元素,以将所有内容都涂成白色。您只想设置“表单”类的颜色并将其传播到子元素。
html - 比 !important 更重要(更高级别的 !important)?
标题说明了大部分内容。是否有!important
在更高级别覆盖的 CSS 关键字,或者在任何较新的 CSS 规范中是否计划了类似的功能?
当然,我知道这!important
有点可能被新手使用,而且在许多情况下,这不是最好的方法,因为如果样式表写得不好,可能真的很糟糕。然而,有时它是有用的,甚至是需要的。
我能想到的 CSS 中最强大的样式是这样的内联样式!important
:
现在让我们假设我无法编辑 HTML 并且必须从外部样式表修改样式。
有这样的东西真的很棒:
如果他们有它的级别,例如z-index
.
是否有任何解决方案或更新 CSS 规范的任何计划?到目前为止,我没有找到任何东西。
你能展示一个 CSS 解决方案来覆盖!important
内联样式还是绝对没有可能?
css - 无法覆盖规则,即使使用 !important
我一定是在监督某些事情或在我的代码中有一些愚蠢的错误,但我无法使用 ID CSS 和(脸红)覆盖 Class CSS,即使添加了讨厌的 !important hack ...
注意:这是一个旧的(ish)WordPress 模板,仍然使用清除 div 来处理浮动,但我必须使用它。不是我的选择。
HTML:
CSS
几行进一步是
我什至尝试交换各个 .sidebar CSS 的位置,但没有任何帮助。根本无法 right:0;
覆盖left:0;
。
这是检查员屏幕截图:
我错过了什么,没有看到,愚蠢?非常感谢 !!!