css-selectors 相关问题

选择器是与文档树中的元素匹配的模式。在CSS规则中,它们用于为与模式匹配的元素定义样式。

伪元素嵌套CSS不适用于在<details>下使用`&`作为::标记,但<summary>

尝试使用伪元素 ::marker 进行 CSS 嵌套功能,但发现奇怪的是这种嵌套不起作用 细节 { 内边距:4px; & 概括 { 红色; &::

回答 1 投票 0

在tailwind中使用map生成兄弟类

我正在使用 tailwind、react 和 nextjs 创建一个网站。我正在尝试利用检查单选按钮技巧让网站在没有 JavaScript 的情况下显示不同的内容。我想做...

回答 1 投票 0

在selenium java中:无法切换到页面上显示的模式角色=“dialog”

我在这里打开页面: 页 我无法单击 cookie 对话框! 我也看不到 iframe 或警报窗口。我尝试了 getWindowHandles 但没有成功。 这是我的硒测试: 包装...

回答 1 投票 0

一个标签的选择器,后跟另一个标签[重复]

这将选择直接位于 标签前面的所有 标签: A+B { /* 样式 */ } 紧接着 标签的所有 标签的选择器是什么? 这是示例 HTML

回答 5 投票 0

如何使用基于嵌套子类的CSS相邻选择器?

我可以像这样使用相邻选择器: /* 当c和c相邻时,将第二个c涂成红色 */ .c + .c { 背景颜色:红色; } 但是当“.c”不存在时如何做同样的事情......

回答 1 投票 0

如何使用 jQuery 选择焦点元素

如何选择具有当前焦点的元素? jQuery 中没有 :focus 过滤器,这就是为什么我们可以使用这样的东西: $('输入:焦点').someFunction();

回答 8 投票 0

我讨厌这种开放式人工智能合作伙伴关系?

而且我讨厌马屁精模组。享受你的反乌托邦吧,白痴。禁止我,我希望感觉真的很好

回答 1 投票 0

Cypress:如何根据父母的孩子选择父母兄弟姐妹的孩子?

我正在寻找一个标签选择器,即基于 id="dropdown- Sex-health" 的 href="/chlamydia-treatment"。 所以基本上是想为我父母的兄弟姐妹的孩子找到一个选择器......

回答 3 投票 0

是否可以用CSS截取此文本,以便我可以隐藏它?

所以,基本上,我有这个由代码自动生成的 HTML 示例: 我想“显示:无”此文本但保持跨度内容可见 有吗

回答 1 投票 0

NoSuchElementException,Selenium 无法定位元素

我想在selenium中找到我的TextField,但我不知道如何(我第一次使用selenium)。 我试过: driver.findElement(By.id("originTextField")) 或通过 xPath 和 cssSelector 字符串

回答 4 投票 0

如何根据子类的伪类设置父类的样式?

我有一个包含输入标签的跨度,并且我在跨度中声明了一个 :after 伪元素来设置其样式。 跨度::之后{ 内容:'有效'; 颜色:绿色; } 输入:无效{ 轮廓:2px

回答 1 投票 0

干掉CSS - 多个父母一个孩子

我在下面分别列出了几个层次结构,其中第一个选择器是父 div,第二个是 div 中的图像项。但我能以某种方式将这些结合起来吗? .outdoors .how-to-image {

回答 4 投票 0

通过全局样式更改 PrimeNG 复选框的默认选中图标

我正在将 Angular 从版本 15 更新到版本 17。因此我还需要更新 primeNG。 我无法更改复选框的默认选中图标。 更改每个图标模板的图标...

回答 1 投票 0

使用内联 CSS 将表格转换为 HTML [已关闭]

如何使用内联CSS将该表格转换为HTML? 该表将在电子邮件程序中使用,仅内联 CSS。 这是用于创建表的原始代码。 如何使用内联CSS将该表格转换为HTML? 该表格将在电子邮件程序中使用,仅内联 CSS。这是用于创建表的原始代码。 <center> <table style="width:100%; color: #000000; font-family: inter; display: grid; grid-template-columns: 100% 100%; grid-template-rows: auto; align-items: stretch; padding: 50px;"> <div> <tr> <th>M&M</th> <th>Tech M</th> </tr> <tr> <td style="color: #19C353; text-align: center;">+4.5%</td> <td style="color: #E82619; text-align: center;">-1.9%</td> </tr> </div> <tr> <th>Power Grid</th> <th>Bharat Petroleum</th> </tr> <tr> <td style="color: #19C353; text-align: center;">+2.7%</td> <td style="color: #E82619; text-align: center;">-1.8%</td> </tr> <tr> <th>Shriram Finance</th> <th>JSW Steel</th> </tr> <tr> <td style="color: #19C353; text-align: center;">+2.3%</td> <td style="color: #E82619; text-align: center;">-1.5%</td> </tr> <tr> <th>IndusInd Bank</th> <th>HCL Tech</th> </tr> <tr> <td style="color: #19C353; text-align: center;">+1.9%</td> <td style="color: #E82619; text-align: center;">-1.5%</td> </tr> <tr> <th>Hero Moto</th> <th>Dr Reddy&apos;s</th> </tr> <tr> <td style="color: #19C353; text-align: center;">+1.9%</td> <td style="color: #E82619; text-align: center;">-1.4%</td> </tr> </table> </center> 您可以通过删除每个 div 中的第二个表格行来稍微调整它,并仅使用表格标题和类似段落标记的内容来设置表格标题的样式,而段落标记位于它们之间。 <div> <tr> <th style="backgroud-color: #e3e9e5; text-align: center; padding: 0.5em; border-radius: 10px;">M&M <p style="color: #19C353; text-align: center;">+4.5%</p> </th> <th style="backgroud-color: #e3e9e5; text-align: center; padding: 0.5em; border-radius: 10px;">Tech M <p style="color: #E82619; text-align: center;">-1.9%</p> </th> </tr> </div> grid-template-rows: auto; align-items: stretch; padding: 50px;"> <div style="border-radius: 10px; padding: 0.5em; "> <tr> <th style="border-radius: 10px; padding: 0.5em; background-color: #e3e9e5; text-align: center;">M&M <p style="color: #19C353; text-align: center;">+4.5%</p> </th> <th style="border-radius: 10px; padding: 0.5em; background-color: #e3e9e5; text-align: center;">Tech M <p style="color: #E82619; text-align: center;">-1.9%</p> </th> </tr> </div> <div style="border-radius: 10px; padding: 0.5em; "> <tr> <th style="border-radius: 10px; padding: 0.5em; background-color: #e3e9e5; text-align: center;">M&M <p style="color: #19C353; text-align: center;">+4.5%</p> </th> <th style="border-radius: 10px; padding: 0.5em; background-color: #e3e9e5; text-align: center;">Tech M <p style="color: #E82619; text-align: center;">-1.9%</p> </th> </tr> </div> <div style="border-radius: 10px; padding: 0.5em; "> <tr> <th style="border-radius: 10px; padding: 0.5em; background-color: #e3e9e5; text-align: center;">M&M <p style="color: #19C353; text-align: center;">+4.5%</p> </th> <th style="border-radius: 10px; padding: 0.5em; background-color: #e3e9e5; text-align: center;">Tech M <p style="color: #E82619; text-align: center;">-1.9%</p> </th> </tr> </div> <div style="border-radius: 10px; padding: 0.5em; "> <tr> <th style="border-radius: 10px; padding: 0.5em; background-color: #e3e9e5; text-align: center;">M&M <p style="color: #19C353; text-align: center;">+4.5%</p> </th> <th style="border-radius: 10px; padding: 0.5em; background-color: #e3e9e5; text-align: center;">Tech M <p style="color: #E82619; text-align: center;">-1.9%</p> </th> </tr> </div> </table> </center> </body> </html>

回答 2 投票 0

有人可以帮忙将此表转换为 HTML CSS,就像本文所附照片中的那样,使用内联 CSS 吗?

有人可以帮忙将此表转换为 HTML CSS,就像本文所附照片中的那样,使用内联 CSS 吗? 该表格将在电子邮件程序中使用,请仅使用内联 CSS。 这是RAW代码

回答 1 投票 0

为什么 :has 伪选择器不适用于元素列表?

我有一个带有“help-image”类的 div 块,其中包含一个 ,位于带有“help-section”类的部分内。 按如下方式使用 :has 选择器效果很好: 部分.h...

回答 1 投票 0

:如果有空格则empty不起作用?

尝试找到一个以为目标的伪类,如下所示: 我尝试过 :blank 和 :empty 但都无法检测到... 尝试找到一个以 <div> 为目标的伪类,如下所示: <div class="nav-previous"> </div> 我尝试过:blank和:empty,但都无法检测到。难道只是做不到吗? https://jsfiddle.net/q3o1y74k/3/ :empty一个人就够了。 根据当前的 Selectors Level 4 规范,:empty 可以匹配仅包含文本节点、仅包含空格 的元素以及完全为空的元素。只是根据当前规范,支持它的人并不多。 :empty伪类表示没有子元素的元素除了(可选)文档空白字符。 来自 MDN: 注意:在选择器级别 4 中,:empty 伪类已更改为类似 :-moz-only-whitespace,但目前还没有浏览器支持此功能。 :-moz-only-whitespace CSS 伪类匹配仅包含仅包含空格的文本节点的元素。 (这包括具有空文本节点的元素和没有子节点的元素。) 正如其他人提到的,这对于 CSS 来说是不可能的。 不过,您可以检查 JavaScript 是否只有空格。这是一个简单的仅 JS 解决方案,匹配的“空”div 为蓝色,而包含文本的 div 为红色。更新为向空 div 添加 empty 类,这将允许您使用 CSS 中的选择器 .empty 轻松定位它们。 仅 JS 的“空”比较将如下所示: if(element.innerHTML.replace(/^\s*/, "").replace(/\s*$/, "") == "") 如果你使用 jQuery,那就更容易了: if( $.trim( $(element).text() ) == "" ){ var navs = document.querySelectorAll(".nav-previous"); for( i=0; i < navs.length; i++ ){ if(navs[i].innerHTML.replace(/^\s*/, "").replace(/\s*$/, "") == "") { navs[i].style.background = 'blue'; navs[i].classList.add( 'empty' ); } else { navs[i].style.background = 'red'; } }.nav-previous { padding: 10px; border: 1px solid #000; } .nav-previous.empty { border: 5px solid green; }<div class="nav-previous"> </div> <div class="nav-previous">Not Empty </div> :empty确实只适用于完全空元素。空白内容意味着它不为空,单个空格或换行符就足够了。只有 HTML 注释才被视为“无内容”。 有关更多信息,请参阅此处:https://css-tricks.com/almanac/selectors/e/empty/ :blank选择器正在开发中,它将匹配空白,请参见此处:https://css-tricks.com/almanac/selectors/b/blank/。但好像还没有浏览器支持。 更新: 请参阅此处了解涉及 jQuery 的可能解决方案。 你的方法的问题是你的容器实际上并不是空的。 :empty 伪类表示没有子元素的元素 全部。就文档树而言,只有元素节点和内容 节点(例如 DOM 文本节点、CDATA 节点和实体引用) 其数据长度非零必须被视为影响 空虚; 由于你有空白空间,这个伪类不会起作用。 :blank 伪类应该是正确的,因为这是它的定义: 这个空白伪类匹配只包含内容的元素 由空格组成但不为空。 问题是这个伪类还没有被任何浏览器实现,您可以在下面的链接中查看。因此,您需要等到它实现才能使用此选择器。 这几乎解释了您所面临的行为 https://css4-selectors.com/selector/css4/blank-pseudo-class/ 这里最好的方法就是确保你的 div 实际上是空的,这样你的方法就会起作用。 你能做的最好的事情就是定义一个空类,如下所示: .empty{ display:none; } 然后在此处添加此 JS 代码,它将把空类附加到您的空白项目中: (function($){ $.isBlank = function(html, obj){ return $.trim(html) === "" || obj.length == 0; }; $('div').each(function() { if($.isBlank( $(this).html(), $(this).contents().filter(function() { return (this.nodeType !== Node.COMMENT_NODE); }) )) { $(this).addClass('empty'); } }); })(jQuery); 检查它在这里工作, https://jsfiddle.net/29eup5uw/ 如果没有 JavaScript/jQuery 实现,你就做不到。 :empty 选择器适用于空标签(因此其中甚至没有 any 空间)或自闭标签,如 <input />。 参考:https://www.w3schools.com/cssref/css_selectors.asp 如果你想使用 JavaScript 实现,我想你会在这里找到答案:How do I check if an HTML element isempty using jQuery? 虽然不完全相同,但如果您可以安全地假设输出并考虑没有子元素作为“空”的定义,则可以在现代浏览器中利用 :has()。 div:not(:has(> *)) { background: red; } <div> <!-- This will not be colorized --> </div> <div> <!-- But this will --> <span>Some content</span> </div>

回答 6 投票 0

为什么有些字符不允许作为 CSS 选择器?

我在 html 中有两个 标题。我想使用 CSS 单独设置它们的样式。为此,我尝试使用数字“1”和“2”作为类名。但是当我尝试在 CSS 中使用 h2.1、h2.2 来选择它们时 我在 html 中有两个 <h2> 标题。我想使用 CSS 单独设置它们的样式。为此,我尝试使用数字“1”和“2”作为类名。但是当我尝试在 CSS 选择器中使用 h2.1、h2.2 选择它们时,它不起作用。 然后我用谷歌搜索,发现有一些字符不允许使用 CSS 选择器。现在我知道选择器有一些规则。但我想知道为什么 CSS 禁止某些字符作为选择器? 我无法使用谷歌找到这背后的原因。 Google 中仅提供规则和允许的字符。有人可以解释为什么某些字符不允许作为选择器的原因吗? 虽然我显然不是设计 CSS 的工程师,但几乎可以肯定这只是解析器如何工作的问题。与大多数编程语言一样,当 CSS 看到某些字符时,它期望接下来会发生某些事情。限制哪些字符可用作选择器使 CSS 更易于解析。 另外,请记住 CSS 是一种相对古老的语言,发明于 1996 年。解释器更简单,为了确保向后兼容性,保留这些限制是有意义的。 根据您的情况,也许可以考虑使用 h2.a、h2.b 等。这可能是一个可行的解决方案。 这个答案是一个很好的额外资源。

回答 1 投票 0

selenium 谷歌扩展自动化回溯错误

为了保证我的信任钱包帐户的安全,我经常注销我的帐户,我决定编写一个Python代码来快速重新登录,但是当我尝试使用xpath或css之类的东西来选择它时

回答 1 投票 0

我可以比较 CSS 选择器中的两个属性吗?

我正在寻找一种方法来构建一个选择器,该选择器将匹配两个属性具有相同值的位置,但找不到语法。这可能吗?如何? 我希望能发挥作用: [数据值A=数据值...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.