相关疑难解决方法(0)

仅当2个类设置为元素时才应用CSS规则

可能重复:
只有存在2个类时才能使用CSS定位元素吗?
CSS Selector,适用于具有两个类的元素

有没有办法将CSS样式应用于元素只有在应用了2个类时?

例如,将我的自定义样式应用于此:

<div class="one two">Text</div>
Run Code Online (Sandbox Code Playgroud)

但不是这些:

<div class="one">Text</div>
<div class="two">Text</div>
Run Code Online (Sandbox Code Playgroud)

css css-selectors

6
推荐指数
1
解决办法
4502
查看次数

某些类型的css选择器的浏览器兼容性

我想知道是否有哪些浏览器不支持这种选择?

1) .class-1.class-2
2) #id-1.class-2
3) .class-1 > .class-2
4) .class-1 + .class-2
5) .class[foo="bar"]
Run Code Online (Sandbox Code Playgroud)

我没有这么多不同的OS与不同的浏览器...所以不知道在哪里可以找到这些兼容性.所以请帮帮忙!

css cross-browser css-selectors

5
推荐指数
1
解决办法
202
查看次数

CSS规则".drop.a"应用于类"拖动"

我有以下HTML标记:

<div class="drag a"></div>
<div class="drop a"></div>
Run Code Online (Sandbox Code Playgroud)

我还有以下CSS规则,它只应用于我的第二个div:

.drop.a
{
   background-color:red;
}
Run Code Online (Sandbox Code Playgroud)

这工作正常,除了在Internet Explorer 9中CSS规则应用于这两个元素.

为什么是这样?我认为这种CSS与所有浏览器普遍兼容?

css internet-explorer css-selectors internet-explorer-9

5
推荐指数
1
解决办法
123
查看次数

有没有解释为什么我们不能在CSS声明块之间放置分号?

在css规则之间放置分号时,将忽略分号后面的规则.这可能会导致一些非常奇怪的结果.MDN有一个jsfiddle可以用来相当清楚地显示这种效果.

是初始状态,是在第一个规则在其末尾有分号后.

幸运的是,从一个人的css块之间排除分号本质上是普遍的做法.

我的问题是:为什么会这样?我听说这是因为它会节省空间(在这种情况下,每个css规则只有一个字符).但这种推理虽然如此,但似乎有点奇怪.我找不到css文件中每个char占用多少空间的细节,但如果它类似于JS,这个SO帖子告诉我们每个char大约是16位,或2个字节.这意味着每条规则可以节省2个字节.

根据该国家平均连接速度列表,全球平均连接速度为5.1兆比特/秒.由于我们通过不允许分号保存每个规则正好1个字符,并且每个字符是16位,我们可以显示平均需要我们节省一秒的规则量是:

5,100,000(bits/second) / 16(bits{saved}/rule) 

(5,100,000/16)*[(bits * rule)/(second * bits] or

318750 (rule/second)
Run Code Online (Sandbox Code Playgroud)

因此,基于全球平均连接速度,需要超过300,000条规则来节省我们一秒钟的时间.

当然,必须存在更有效的方法来为用户节省下载时间,并且还有诸如css/js的缩小/丑化.或者减少CSS属性名称的长度,因为它们比1个字符长得多,并且可以出现很多次,与剪掉一个尾随的分号相比,缩短这些可以节省大量字节的数量级.

在我看来,比保存的字节更重要的是,这对于开发人员来说是多么令人困惑.我们中的许多人都习惯于用分号跟随封闭的括号.

returnType/functionDec functionName(arguments){
 //...function body
};
Run Code Online (Sandbox Code Playgroud)

在许多语言(包括JavaScript)中都可以找到非常常见的模式,并且可以想象开发人员打字

cssRuleA{ 
 /*style Rules */
};
cssRuleB{
 /* Style Rules*/
};
Run Code Online (Sandbox Code Playgroud)

作为这种习惯的偶然结果.控制台将不记录任何错误,开发人员将没有迹象表明在样式之外没有正确显示错误.绝对最糟糕的部分是,即使cssRuleA是导致错误的原因,它也会正常工作,即使没有任何问题,cssRuleB也将无法正确显示.这个事实

  1. 这在控制台中没有记录错误
  2. 在这种情况下,不显示的风格绝不是错误的风格

特别是在大型项目中会出现问题,因为样式/ UI问题可能有许多不同的根源.

CSS中是否存在一些固有的因素使得这种约定更有意义?我错过了一些白皮书中有什么东西可以解释为什么这就是CSS的行为方式吗?就个人而言,我试图从有限自动机/语法的角度来看是否更快地排除分号,但我无法确定它是否更快.

css syntax

5
推荐指数
1
解决办法
163
查看次数

JQuery/CSS需要多个类

是否有可能在jQuery或CSS(因为我认为他们使用相同的选择器逻辑)来说出具有多个类的select元素.例如:

<div class='class1'></div>
<div class='class2'></div>
<div class='class1 class2'></div>
Run Code Online (Sandbox Code Playgroud)

有没有办法我可以说我想要class1和class2的元素(因此在这种情况下只获得第三个div)?

html css jquery css-selectors

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

css:element.class.class - 这是什么意思?

这是一段代码:

div.note.note_expanded
Run Code Online (Sandbox Code Playgroud)

这是什么意思?我理解div.className,但第二个点是什么?

css css-selectors

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

CSS有一个选择器可以选择何时进入多个班级吗?

我有以下内容:

<a class="nav disabled">Test</a>
Run Code Online (Sandbox Code Playgroud)

如果地址同时包含"nav"和"disabled"类标记,是否有某种方法可以指定背景颜色?换句话说,一个选择器将只选择下面三个中的最后一个:

<a class="nav">Test1</a>
<a class="disabled">Test2</a>
<a class="nav disabled">Test3</a>
Run Code Online (Sandbox Code Playgroud)

css css-selectors

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

如何在样式组件中使用联合选择器

我有看起来像这样的旧 CSS:

.btn_1 {
    color: #fff;
    background: #004dda;
    display: inline-block;
}
.btn_1:hover {
  background-color: #FFC107;
  color: #222 !important;
}
.btn_1.full-width {
  display: block;
  width: 100%;
}
Run Code Online (Sandbox Code Playgroud)

我想迁移到在 React 中使用样式组件(CSS-in-JS 样式)。

到目前为止,这是我的迁移:

.btn_1 {
    color: #fff;
    background: #004dda;
    display: inline-block;
    :hover {
        background-color: #FFC107;
        color: #222 !important;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是在样式化组件中是否有针对选择器的解决方案,.btn_1.full-width或者我应该为此创建另一个 CSS 块?


我认为做这样的事情(或更好)会很酷:

.btn_1 {
    ${this}.full-width {
        display: block;
        width: 100%;
   }
}

Run Code Online (Sandbox Code Playgroud)

但我似乎无法在文档中找到解决方案。你知道这是怎么可能的,或者这甚至是一个好主意吗?

css reactjs styled-components

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

我可以使用什么样的CSS选择器来选择具有多个类的元素?

我有以下HTML:

<div class="block-content no-title grey-bg">
Run Code Online (Sandbox Code Playgroud)

如何将此div的背景设置为#333的颜色?

是否有某种CSS选择器可用于选择那些具有gray-bg的块内容​​div?

html css

2
推荐指数
1
解决办法
121
查看次数

如何格式化 id 中的类 class?

我有以下 HTML:

<div id="footer">
  <div class="wrapper clear">
    <!-- stuff -->
  </div>
<div>
Run Code Online (Sandbox Code Playgroud)

我应该在 css 文件中放入什么来格式化具有包装类和清除类的 div,但仅限于页脚内?

这是与 wordpress.com 一起使用的,所以我无法更改 HTML。

css class css-selectors

0
推荐指数
1
解决办法
6849
查看次数

如何将CSS应用于具有多个类的元素?

有没有办法将样式应用于包含多个类的元素?


<div class="foo"     > foo     </div>
<div class="foo bar" > foo bar </div>
<div class="bar"     > bar     </div>
Run Code Online (Sandbox Code Playgroud)

我只想修改包含类"foo bar"的元素的样式.XPath信息就像是//div[contains(@class,"foo") and contains(@class,"bar")].纯CSS的任何想法,没有必要创建一个独特的类?

css css-selectors

0
推荐指数
1
解决办法
1210
查看次数

IE不了解CSS继承

我有Internet Explorer的问题,当然它在其他浏览器中工作得很好.所以我有一个CSS clases.我正在做一个像左边,中间和右边部分的框架,但有三种不同的配色方案.所以我不想制作9个不同的类,我使用CSS功能就像这个例子:

.container-header .left { /* Some styles here... */ }
.container-header .left.style1 { /* Some styles here... */ }
.container-header .left.style2 { /* Some styles here... */ }
.container-header .left.style3 { /* Some styles here... */ }

.container-header .middle { /* Some styles here... */ }
.container-header .middle.style1 { /* Some styles here... */ }
.container-header .middle.style2 { /* Some styles here... */ }
.container-header .middle.style3 { /* Some styles here... */ }

.container-header .right { /* Some …
Run Code Online (Sandbox Code Playgroud)

html css internet-explorer

0
推荐指数
1
解决办法
369
查看次数