Что надо знать бэкэнд-программисту о верстке?
===============================================

 Часто бывает, что отданная программисту для «прикрутки» или «натягивания» верстка ломается. В результате его действий что-то где-то едет, чего-то где-то не хватает. Приходится доделывать уже сделанное.  
  
  

Это не претензия к программеру, он совершенно не обязан разбираться в тонкостях верстки. Но все же хочется обозначить ключевые моменты, чтобы таких ситуаций было меньше.  
  
  

Раньше могли запросто не закрыть тег («ну и что, это же верстка, а не код» — к счастью, такая мотивация встречалась редко), или закрыть, но ломая вложенность, Сейчас в основном страдают инлайн-блоки, приходится в комментариях писать «тут нельзя оставлять пробел» и подобное.  
  
  

С чем вы сталкиваетесь, что ломают? 

> ...«тут нельзя оставлять пробел» и подобное.

   

Ну если ваша верстка от пробела разваливается, то проблемы скорее у вас, а не у программистов :) 

По своему опыту могу сказать, что в 99% случаях моя верстка ломается у программиста из-за его невнимательности, забыл закрыть тег, напутал с вложенностью или порядком элементов, забыл какой-нибудь класс, решил, что надо переставить элементы потому-что так будет красивее и пр.
Я не делаю так, что из-за пробела что-то ломается, если есть какие-то сомнительные моменты, то обязательно коммент.
Так же из своего опыта, если программист пытается что-то доделать или поправить (ну сказал ему менеджер, что это надо поменять местами, это подвинуть), то получается фигня, которую надо переделывать верстальщику, и хорошо если верстальщика поставят в известность.
В итоге, на мой взгляд, программист не должен трогать верстку, ну а если он хочет в этом разбираться и без участия верстальщика что-то делать, то нужно нормально углубляться в изучение верстки, верстать какие-то странички, практиковаться. Знания css свойств к сожалению не достаточно.

 

 Зачем бекенд-программисту лезть в верстку?  

Что-то добавил? В начале шаблона вывести структурой({{ dump new\_var }}) — верстальщик сам поставит куда надо. 

 Думаю, надо попробовать самому сверстать что-нибудь относительно сложное и кроссбраузерное, чтобы понимать, что и откуда растет. 

 HTML-комментария в HTML-коде перед блоком, нуждающимся в дополнительной информации, обычно вполне достаточно. И контроль со стороны HTML/CSS-кодера по факту интеграции вёрстки с движком, конечно, желателен, иначе неизбежны если не халтура, то как минимум случайные несоответствия. 

Чтобы ничего не ехал и не ломалось, достаточно проверить верстку с разным количеством контента перед отправкой программисту.
А насчет инлайн-блоков - лучше использовать метод с `letter-spacing: -.31em;`