2014-10-14 7 views
3

Это хороший способ использовать анонимный блок-блок вместо блока? Каковы плюсы и минусы?Анонимный блок-блок против элемента блока

<div> 
    Some text 
    <p>More text</p> 
</div> 

против

<div> 
    <p>Some text</p> 
    <p>More text</p> 
</div> 

P.S. Вопрос встал после прочтения этого пункта http://www.w3.org/TR/CSS2/visuren.html#anonymous-block-level.

ответ

2

Вы должны использовать семантическую разметку, что означает использование тегов HTML, которые правильно описывают ваш контент. Посмотрите на CSS самих спецификаций, которые говорят:

CSS дает так много энергии для атрибута «класса», что авторы могут создавать свои собственные «языки документа» на базе элементов с почти не ассоциированным представлением (например, как DIV и SPAN в HTML) и присвоение информации стилей через атрибут «class». Авторы должны избегать этой практики, поскольку структурные элементы языка документа часто признавали и принимали значения, а определенные автором классы не могли.

Я обсуждаю это больше по этой статье: http://phrogz.net/CSS/HowToDevelopWithCSS.html#semanticmarkup

В вашем конкретном случае, если вы используете CSS, чтобы сделать что-то вроде p:first-line { text-indent:2em } не будет применяться к вашему «какой-то текст», если не включать оберточный элемент. Если вы включите <p>, тогда будет правильно отображаться весь стиль, который применяется к параграфам.

(И вы можете использовать более подходящий элемент, чем <div>, такие как <section>, если это применимо).