У меня есть вложенная структура html с divs внутри divs (создание строк внутри строк). Мне нужно разрешить пользователю устанавливать div (row) css (добавить класс css). Я изо всех сил пытаюсь найти решение, когда спецификация css та же. Например, я хочу создать четыре уровня вложенных строк и иметь первую строку с красной границей, вторую и третью с синим и четвертым с красным. С нижней разметкой и css четвертая строка имеет синюю границу вместо красного, потому что спецификация css такая же, и применяется последний класс.Перезаписать css во вложенных элементах
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style>
.main {
width: 300px;
height: 100px;
}
.main .row {
width: 100%;
height: 100%;
border: 1px solid #808080;
}
.main .row [class*="span"] {
display: block;
min-height: 30px;
margin-top: 5px;
margin-bottom: 5px;
}
.main .red .bp1 {
border: 2px solid red;
margin-left: 10px;
margin-right: 10px;
}
.main .blue .bp1 {
border: 2px solid blue;
margin-left: 20px;
margin-right: 20px;
}
</style>
</head>
<body>
<div class="main">
<div class="row red">
<div class="span bp1">
<div class="row blue">
<div class="span bp1">
<div class="row blue">
<div class="span bp1">
<div class="row red">
<div class="span bp1"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row blue">
<div class="span bp1">
<div class="row red">
<div class="span bp1">
<div class="row blue">
<div class="span bp1">
<div class="row red">
<div class="span bp1"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
Во второй вложенной дивы Я хочу, чтобы получить синий/красный/синий/красный строк, к сожалению, все синие, потому что это последний класс стиля.
Есть ли способ решить эту проблему?
@editor Вы с ума сошли? Вы не реструктурируете код OP, когда OP задает вопрос об этом коде. – djechlin