Можно ли разместить div внутри тега?

Я не думал, что это проблема, но моя IDE, похоже, говорит мне об этом. Существуют ли какие-либо браузеры, которые не смогли бы сделать это правильно?

Использование NetBeans IDE 7.3.

Спасибо.

Ответ 1

В соответствии со спецификацией HTML5 это абсолютно нормально. Модель контента является нормативным описанием того, что может быть дочерним/потомок элемента. Для элемента <th> допускаются только следующие теги:

Модель контента:

Содержимое потока, но без заголовка, нижнего колонтитула, секционного содержимого или заголовок содержимого потомков, и если элемент th является сортировкой интерфейс th, нет потомков интерактивного контента.

Тег <div> является примером содержимого потока, поэтому это должно проверяться.

В будущем я бы рекомендовал службу валидатора W3C, которая дает вам быстрый чек, чтобы узнать, действительно ли ваш HTML. В этом случае он передает:

<!DOCTYPE html>
<html>
<head><title>&nbsp;</title></head>
<body>
<table>
  <tbody>
    <tr>
      <th>
        <div></div>
      </th>
    </tr>
  </tbody>
</table>
</body>
</html>

Ответ 2

<DIV> внутри <TD> или <TH> абсолютно нормально, и является достаточно распространенным требованием для позиционирования и компоновки.

Например, для параметра TH не может быть установлен position:relative, но DIV может... включить его в контейнер позиционирования.