相关疑难解决方法(0)

CSS中唯一具有文本同级的孩子

我想使以下内部跨度消失,如果它是独生子:

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

即选择器在这种情况下不起作用:

<div class="foo">
  <span></span>  
  Some text
</div>
Run Code Online (Sandbox Code Playgroud)

我试着:only-child:last-child它不工作,我认为是因为“一些文本”的文本。

html css css-selectors css3

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

使用 CSS 定位文本节点

我正在研究容器对象的 CSS。我基本上都在工作。具体来说,我正在查看测试用例 1、2 和 3。它们都有文本节点。有没有办法像对待任何子元素一样对待文本节点?

有什么方法可以调整 CSS 以使文本节点及其兄弟节点正常工作吗?除非有一个CSS选择器可以使用,.container只有在有文本节点的情况下才会选择a,这样我就可以选择display: none它(或者更好的东西,但仍然让开发人员知道事情不起作用)?

这里还有一个Codepen

code,
p,
quote {
  display: block;
  position: relative;
  margin: 0;
  padding: 1em;
  border: 1px solid black;
  box-sizing: border-box;
}
code {
  background-color: #ccc;
}
p {
  background-color: #0df;
}
quote {
  background-color: #fd0;
}
quote::after {
  display: table;
  clear: both;
  content: "";
}
.hidden {
  display: none;
}
.third {
  height: 100%;
  width: 33%;
  float: left;
  border: 1px solid black;
}
.container {
  display: …
Run Code Online (Sandbox Code Playgroud)

html css css-selectors

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

如何使用CSS first-child但不包括文本内容

这段代码不符合我的预期:

div li span:first-child {
  font-weight: bold;
}
Run Code Online (Sandbox Code Playgroud)
<div>
  <ul>
    <li><span>This is a test</span></li>
    <li>And <span>this is also a test</span></li>
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

这两个span元素都是粗体.我原本期望第二个不是大胆的,因为它遵循明文"And ",但我想:first-child不会认为文本内容是一个孩子.

有没有办法区分这两种情况,并选择没有任何内容或兄弟姐妹的元素?


澄清一下:在我的具体情况中,我想<span>在每个<li>元素中加粗一个元素,但只有在它的开头是正确的,<li>而不是在任何文本或其他元素之前.

html css

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

是否可以选择前面没有文本的元素?

我想要一个与<code>in匹配的 CSS 选择器:

<p><code>foo</code> bar</p>
Run Code Online (Sandbox Code Playgroud)

但不是<code>在:

<p>foo <code>bar</code></p> 
Run Code Online (Sandbox Code Playgroud)

code:first-child不起作用。它匹配两者。

问只是因为我认为这是不可能的。

我想我会在放弃之前给社区一个机会。


编辑- 人们一直将其标记为重复,所以让我明确一下:如果当前的最佳答案是正确的,那么您所引用问题的答案具有相同的根本原因,但这并不使它成为相同的问题。这两个问题的答案完全有可能不同——或者如果不是,那么“为什么”只是这个问题的答案,而不是那个问题的答案。

html css css-selectors

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

单词结束后的CSS省略号

我正在显示带有省略号的文本。在我当前的CSS中,省略号表示断字。

我需要在单词补全后显示省略号以确保适当的可读性。

以下是我的CSS

.myContainer {
  text-overflow: ellipsis;
  max-width: 250px;
  overflow: hidden;
  white-space: nowrap;
  padding-bottom: 15px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="myContainer">
  Testing the dataset in path oregon location should done
</div>
Run Code Online (Sandbox Code Playgroud)

我不想更改容器的宽度。单词位置未显示。

省略号应在位置字后显示(完整)

css

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

如何仅更改默认光标?

我的网站有一个自定义光标图像,但仅用于default状态。在其余情况下(特别是对于text)我想要预定义的。

但是如果我这样定义自定义光标......

html {
  cursor: url('path/to/custom/cursor.svg') 0 0, default;
}
Run Code Online (Sandbox Code Playgroud)

至少text状态丢失了(不是pointer,但我怀疑其他人也丢失了),并且我的段落、带有文本的跨度、标题等现在显示我的自定义光标,而不是预定义的文本选择器。

当然,我可以重新定义某些元素的样式......

p, span, ol, ul, h1, h2, h3, h4 {
  cursor: text;
}
Run Code Online (Sandbox Code Playgroud)

text状态并没有真正链接到某些 html 标签,当存在不受其他修饰符影响的文本节点时,它就会出现。例如,如何定位仅包含文本的 div,但排除仅包含特定颜色、背景等的另一个 div 的 div?

正如我在这个问题中看到的,没有一种方法可以直接定位文本节点,所以我想知道是否有一种侵入性较小的方法来定义自定义光标,在预定义的默认光标出现的情况下,并且仍然显示所有预定义的每个修改状态的游标(textscroll等)

先感谢您。

示例 1:如果定义了 html 光标,则所有内容都将被覆盖:

html {
  cursor: url('path/to/custom/cursor.svg') 0 0, default;
}
Run Code Online (Sandbox Code Playgroud)
p, span, ol, ul, h1, h2, h3, h4 {
  cursor: text;
}
Run Code Online (Sandbox Code Playgroud)

示例 2:如果我们尝试重新定义某些元素,我们现在就会出现误报...

css

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

没有列表的子弹式列表

我有以下 html 代码

<div class="magicbullets">
Nice
awesome
cool
</div>
Run Code Online (Sandbox Code Playgroud)

我需要它表现得像

<div class="magicbullets">
<ul>
<li>nice</li>
<li>aweseome</li>
<li>cool</li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)

我可以环绕<ul></ul>内容,但我不能逐行修改内容本身(nice、awesome、cool)。我只需要选择使用 CSS 来实现我想要的。

我设法创建了所需的新行

.magicbullets {
     white-space: pre-line;
} 
Run Code Online (Sandbox Code Playgroud)

对于每个条目,但list-style-type没有列表就无法真正工作。

总结一下,它应该是这样的:

  • 好的
  • 惊人的
  • 凉爽的

这是使用纯 CSS可行还是需要某种客户端代码(JS、jQuery)或服务器代码(PHP)?

css jquery

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

标签 统计

css ×7

html ×4

css-selectors ×3

css3 ×1

jquery ×1