CSS - стилизация дочернего элемента, если родительский элемент имеет :: before

Я вызываю и оформляю ссылку с помощью класса myCheckboxLink следующим образом:

css:

table.table-custom tbody td a.myCheckboxLink {
    /* styling */
}

html:

<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">
                <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>

Если td.dt-checkbox имеет :: before ... Мне нужен другой стиль для myCheckboxLink:

приставка:

<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>

Но это не работает:

css:

table.table-custom tbody td::before a.myCheckboxLink {
    display: none;
}

Как мне изменить стиль, если td.dt-checkbox имеет :: before?

посмотрите на проблему по-другому, и вы получите ответ ---> :before добавлен только с CSS ----> так что есть стиль, примененный к классу или чему-то еще -> поэтому используйте этот класс, чтобы применить стиль к вашему элементу

Temani Afif 17.04.2018 12:10

Вы хотите переключать стили при нажатии на ссылку?

zer00ne 17.04.2018 12:12

У меня есть флажок в первом столбце ... и когда на мобильной ширине таблица сворачивается, а затем я хочу скрыть этот флажок, так как вместо этого я получаю кнопку переключения, как здесь datatables.net/extensions/responsive/examples/initialisation‌ /…

Philipp M 17.04.2018 12:19

Вы знаете, что именно сворачивает стол? Медиа-запрос? matchMedia? JS / jQ?

zer00ne 17.04.2018 12:29

Взгляните сюда: datatables.net/extensions/responsive/examples/initialisation‌ /…

Philipp M 17.04.2018 12:31

Это довольно широкое объяснение, вы ожидаете, что я прочту всю страницу?

zer00ne 17.04.2018 12:32

Я не уверен, что именно сворачивает таблицу ... но я использую DataTable, и в приведенном примере вы можете видеть, что в адаптивном режиме таблица сворачивается и добавляет эту кнопку переключения

Philipp M 17.04.2018 12:37
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
1
7
41
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

::before в CSS - это не состояние, подобное :hover или :visited. Вместо этого ::before относится к другому элементу внутри элемента, который использовался ранее - псевдоэлементу.

Например, этот код меняет фон для div, пока он завис:

div:hover{background: Red}

Однако этот код стилизует псевдоэлемент внутри div, но помещается перед всеми его дочерними элементами:

div::before{background: Red; content: "I'm red."}

Вот почему существует ни за что, чтобы узнать, есть ли псевдоэлемент с CSS. Потому что это CSS, создающий псевдоэлементы.

Решение:

Когда вы определяете псевдоэлемент для td, также определите стиль для его дочерних элементов.

Другие вопросы по теме