@choupa
Архитектор (обычный, который строит)

Как прокинуть border-color вниз по каскаду, минуя color?

<div class = "A">
	<div>
		...
			<div class = "B">...</div>
		...
	</div>
</div>


.A	{
	border-color: red;
}

.B	{
	color: green;
}


Для внешнего дива задан цвет рамки. Я хочу прокинуть border-color в глубоко вложенный див, у которого задан какой-то свой color для текста. И этот color, зараза, перекрывает border-color, и рамка становится тоже green. Как быть?

Важно, что внутренний див находится глубоко, и вариант с border-color: inherit не годится, т.к. надо делать border-color: inherit у всех промежуточных дивов, что не хочется. Есть более разумный путь?
  • Вопрос задан
  • 120 просмотров
Решения вопроса 2
lamer350
@lamer350
กำลังสูงสุด
Не совсем понятно, если вы указали class A и B, значит вы заранее знаете class B? Пропишите ему так же border-color который вам нужен.
Если цель просто задавать цвет рамки в одном месте - пишите просто: .A, .B {}, а если класс неизвестен заранее - .A, .A * {}

UPD: color в вашем случае не перекрывает border-color, просто есть свойства которые унаследуют (color, font и тд), а есть те которые не унаследуют (border как раз к таким относится). Почитайте об этом отдельно. Потому у вас просто border-color по сути не задан и потому используется цвет из color
Ответ написан
JRK_DV
@JRK_DV
Рецепты https://codepen.io/jrkdv/full/LKLXdq
как вариант можете использовать css переменные
https://codepen.io/anon/pen/MRLxdb
потому что унаследует значение первого попавшегося свойства border-color или color
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы