Псевдоселектор: не работает в Firefox, но работает в Chrome и Opera

.main:has(article:nth-child(n + 2)) .role * {
font-size:55px;  
}
<div class = "main">
  <article><div class = "role"><span>Ruolo1</span> </div> contenuto1 </article> 
   <article><div class = "role"><span>Ruolo2 </span> </div> contenuto2 </article> 
  <article><div class = "role"><span>Ruolo3 </span> </div> contenuto3 </article> 
  <article><div class = "role"><span>Ruolo4 </span> </div> contenuto4 </article> 

</div>

Почему CSS не работает в Firefox?

Размер шрифта будет 55 пикселей для всех элементов, кроме первого.

Потому что has() не поддерживает в firefox

Sfili_81 13.04.2023 09:57
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в 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. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
0
1
106
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Вы можете увидеть здесь, что :has() не поддерживается в firefox, он поддерживается почти всеми другими браузерами.
Есть некоторые обходные пути, подобные этому: Как включить селектор :has() в Firefox. Однако это проблема совместимости, и она никогда не работает так хорошо, как в других браузерах.

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

На данный момент (апрель 2023 г.) Firefox не поддерживает :has() по умолчанию.

Из таблицы поддержки в MDN:

Таким образом, вы можете протестировать его в FF, установив флаг, но если у вас есть значительное количество пользователей в FF, вы можете реализовать обходной путь.

Этот фрагмент применяет размер шрифта ко всем статьям, за исключением случаев, когда существует только одна статья (т. е. если статья не является одновременно и первой, и последней дочерней статьей).

/*.main:has(article:nth-child(n + 2)) .role * {
font-size:55px;  
}*/

.main article:not(:first-child:last-child) .role * {
  font-size: 55px;
}
<div class = "main">
  <article>
    <div class = "role"><span>Ruolo1</span> </div> contenuto1 </article>
  <article>
    <div class = "role"><span>Ruolo2 </span> </div> contenuto2 </article>
  <article>
    <div class = "role"><span>Ruolo3 </span> </div> contenuto3 </article>
  <article>
    <div class = "role"><span>Ruolo4 </span> </div> contenuto4 </article>
</div>

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