Html CSS-如果父元素有::before,则设置子元素的样式

Html CSS-如果父元素有::before,则设置子元素的样式,html,css,Html,Css,我正在调用一个类为“myCheckboxLink”的链接并设置其样式,如下所示: css: html: 如果td.dt-checkbox有::before,我如何拥有不同的样式 ::在CSSis中的之前,不是像:悬停或:已访问那样的状态。相反,::before指的是与before一起使用的元素中的另一个元素-伪元素 例如,此代码正在更改div悬停时的背景: div:hover{background: Red} 但是,此代码正在设置div中的伪元素的样式,但放在其所有子元素之前: div::be

我正在调用一个类为“myCheckboxLink”的链接并设置其样式,如下所示:

css:

html:


如果td.dt-checkbox有::before,我如何拥有不同的样式

::在CSSis中的
之前,不是像
:悬停
:已访问
那样的状态。相反,
::before
指的是与before一起使用的元素中的另一个元素-伪元素

例如,此代码正在更改
div
悬停时的背景:

div:hover{background: Red}
但是,此代码正在设置
div
中的伪元素的样式,但放在其所有子元素之前:

div::before{background: Red; content: "I'm red."}
这就是为什么无法知道CSS中是否有伪元素。因为它是CSS创建的伪元素

解决方案:
td
定义伪元素时,还要为它的孩子定义样式。

以不同的方式查看问题,您将得到答案-->
:在只使用CSS添加
之前-->因此有一个样式应用于类或某物-->所以使用该类将样式应用于元素单击链接时是否要切换样式?我在第一个复选框中有一个复选框专栏。。。当使用移动宽度时,表格会折叠,然后我想隐藏这个复选框,因为我会得到一个像这里这样的切换按钮,你知道到底是什么折叠了表格吗?媒体查询?火柴媒体?JS/jQ?看看这里:
<table id="custom" class="display table-custom dataTable">
    <thead></thead>
    <tbody>
        <tr id="row_33" role="row" class="odd">
            <td class=" dt-checkbox" tabindex="0">
                ::before
                <a class="myCheckboxLink" tabindex="0">
                    <span class="myCheckboxSpan">
                        <i class="fa fa-check fa-check-checkbox" aria-hidden="true"></i>
                    </span>
                </a>
            </td>
        </tr>
    </tbody>
</table>
table.table-custom tbody td::before a.myCheckboxLink {
    display: none;
}
div:hover{background: Red}
div::before{background: Red; content: "I'm red."}