Цитата |
---|
Денис Сон написал:
Цитата |
---|
Андрей Гаврилов написал: Основная причина любовь использования каскадности стилей. А так как при включенной правке битрикс встраивается свои дополнительные блоки, то и происходит эта ошибка. Чрезмерная касеадность стилей это зло. |
При чем тут каскадность? Каскадность это потрясающее свойство CSS. Битрикс и каскадность вещи абсолютно не взаимосвязанные. И встраивающиеся блоки Битрикса с каскадностью не имеет никакой взаимосвязи, за исключением случае, когда из-за доп. блоков пропадает смысл CSS-правил с дочерними селекторами, например: Было:Код |
---|
<div class="my"><div>...</div></div>
<st yle>
.my > div {float:left;}
</style> |
Стало:Код |
---|
<div class="my"><div id="bx_incl_area_5"><div>...</div></div></div> |
В таком случае, конечно, кто-то скажет что "Битрикс виноват". А виноват-то сам разработчик, а не битрикс. Сделаны эти доп. блоки не просто так, они очень полезны. Сделать по-другому не было и нет возможности. Поэтому учет этого фактора просто становится дополнительным правилом , которое обязательно следует соблюдать при разработке. |
Ну раз Вы считаете каскадость великая вещь то и получаете то что имете.
Код |
---|
<div class='wrapper'>
<div class='b-wrapper'>
<div class='left_section'>
</div>
</div>
</div>
|
То есть высчтаете, что вот так будет правильно.
Код |
---|
.wrapper{....}
.wrapper div{ .... }
.wrapper div div { ... }
|
А я считаю и многие согласны, что вот так будет правильнее
Код |
---|
.wrapper{.....}
.b-wrapper{ ..... }
.left_section { ...... }
|
И в том и в том случае стили результат будет тот же только во втором случае даже если там встроется блок маловероятно что он что то нарушит.
Я понимаю что в втором случае каждому блоку надо давать определения класса или идентификаторы. Но это избавляет Вас в будущем от ненужных проблем, а введя определнные правила проблем с именами у Вас не будет, и Вы всегда будете знать даже по верстке какие стили наерняка к блоку примененны.