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