powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Помогите составить селектор для стиля CSS
10 сообщений из 10, страница 1 из 1
Помогите составить селектор для стиля CSS
    #38219319
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть конструкция в HTML-коде такого вида:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
...
<div class="toc">
<ul>
<li>text1
<ul>
<li>subtext1</li>
<li>subtext2</li>
</ul>
</li>
<li>text2</li>
<li>text3</li>
</ul>
</div>
...



То есть div-контейнер с классом toc, в котором могут быть сложенные списки UL.
Как задать такой селектор: если у LI есть вложенный UL, то выделить данный LI (и только его) полужирным начертанием.
Что-то типа такого:
Код: css
1.
li ul {font-weight:bold}


То есть контекстный селектор, но наоборот.
________________________
Мы смотрим с оптимизмом...
...в оптический прицел.
...
Рейтинг: 0 / 0
Помогите составить селектор для стиля CSS
    #38219323
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
никак
...
Рейтинг: 0 / 0
Помогите составить селектор для стиля CSS
    #38219389
Фотография Малыхин Сергей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Оставлю это тут


Почему у нас нет селектора по родителю?
Уже дано достаточно пояснений, чтобы можно было вернуться к оригинальному вопросу. Проблема не в том, что у нас не может быть селектора по родителю. Проблема в том, что мы столкнемся с проблемами быстродействия, когда дело дойдет до определения того, какие CSS-правила применимы к данному элементу. Если Google Page Speed не рекомендует использование универсальных селекторов, то можно гарантировать, что селектор по родителю будет первым в списке ресурсоемких селекторов, намного опережая все проблемы с производительностью, которые могут быть вызваны использованием универсального селектора.
Давайте посмотрим почему. Первым делом давайте приведём пример синтаксиса для селектора по родителю.
Код: html
1.
div.module:has(span) { color: green; }


Проблема в том, что мы не можем определить применимость правила до тех пор, либо пока мы не найдем соответствия, либо пока все элементы, дочерние по отношению к родителю данного, не будут загружены. Ввиду этого мы должны оценивать правило и все остальные (в случае наличия специфических особенностей), применяющиеся к элементу, для каждого дочернего элемента, который мы загружаем.
Посмотрите на часть нашего документа:
Код: html
1.
2.
3.
4.
5.
<div class="module">
    <p>Lorem Ipsum</p>
    <p>Lorem Ipsum</p>
    <p>Lorem Ipsum <span>Test</span></p>
</div>


Исходя из того, что мы видим, .module будет отображён без использования правила, применяемого селектором по родителю. Когда будет загружен первый элемент <p>, нужно повторно оценить применимость селектора по родителю к <div>. Нужно сделать это снова для следующего параграфа. И снова, для следующего. Наконец, когда <span> загружен, селектор по родителю будет применен к родительскому <div>, и элемент нужно будет повторно перерисовать.
И что теперь? Теперь, если изменится любое наследуемое CSS-свойство, каждый потомок должен будет повторно анализироваться и перерисовываться. Ох…
Почему проблему можно решить с помощью JavaScript?
Это только кажется, что JavaScript решает проблему. В общем случае JavaScript-заплатки (заплатки — polyfills — части кода, обеспечивающие функциональность, которую должен обеспечивать браузер. Примечание переводчика). Или регрессивное усовершенствование (или как там вы, молодежь, это сейчас называете) запускаются только один раз, после полной загрузки DOM.
Для того чтобы действительно имитировать поведение CSS, любой скрипт, решающий эту проблему, должен запускаться после отображения каждого элемента на странице, чтобы определить, нужно ли применить нашу «заплатку». Помните CSS-expressions в Internet Explorer? Именно по этой причине они вызывали такие проблемы с производительностью.
...
Рейтинг: 0 / 0
Помогите составить селектор для стиля CSS
    #38221003
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понятно. Да, наверное это правильно.
Что же, для родительских пунктов буду стиль задавать вручную.
...
Рейтинг: 0 / 0
Помогите составить селектор для стиля CSS
    #38221337
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще вопрос.
Допустим я вручную задаю класс для тех элементов списка, у которых есть вложенные элементы:
Код: html
1.
2.
3.
4.
5.
<li class="test">text1
<ul>
...
</ul>
</li>


здесь li.test выделяется полужирным начертанием.
Но это же полужирное начертание действует и на вложенный в него UL.

Можно ли ограничить действие селектора только непосредственным содержимым элемента и не применять его к вложенным элементам?
...
Рейтинг: 0 / 0
Помогите составить селектор для стиля CSS
    #38221348
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
напишите правило для li.test>ul
...
Рейтинг: 0 / 0
Помогите составить селектор для стиля CSS
    #38221372
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, так можно.
Иначе никак?
...
Рейтинг: 0 / 0
Помогите составить селектор для стиля CSS
    #38221400
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как иначе - не знаю
http://htmlbook.ru/samcss/nasledovanie
...
Рейтинг: 0 / 0
Помогите составить селектор для стиля CSS
    #38221422
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я имел ввиду, что есть же псевдоэлементы типа :after и :before.
Может быть есть что-то типа :text?
...
Рейтинг: 0 / 0
Помогите составить селектор для стиля CSS
    #38221647
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.Может быть есть что-то типа :text?Вот рассадник селекторов: тынц . Все, что может быть, — там.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Помогите составить селектор для стиля CSS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]