Ответ 1
(Бесстыдная копия ответа на этот источник и возможное повторение, в котором извлечена информация из этой статьи.)
Существует несколько элементов (
<input>
,<select>
,<button>
,<img>
,<object>
и<textarea>
), которые считаются замененными элементами, внешний вид и размеры которых определяются внешним ресурсом. (например, операционная система, плагин и т.д.).Заменяемые элементы могут иметь внутренние размеры - значения ширины и высоты, которые определяются самим элементом, а не его окружением в документе. Например, если элемент изображения имеет ширину, установленную на auto, будет использоваться ширина файла связанного изображения. Внутренние измерения также определяют внутреннее соотношение, которое используется для определения вычисленных размеров элемента, если указывается только одно измерение. Например, если для элемента изображения указана только ширина, скажем, 100 пикселей, а фактическое изображение имеет ширину 200 пикселей и высоту 100 пикселей, высота элемента будет масштабирована на ту же величину, до 50 пикселей.
Замененные элементы могут также иметь визуальные требования к форматированию, налагаемые элементом, вне контроля CSS; Например, элементы управления пользовательского интерфейса отображаются для элементов формы.
С HTML5 у вас есть еще пара таких как <audio>
и <canvas>
и некоторые другие.
Обратите внимание, что - как вы увидите в обсуждениях в комментариях - button
самом деле не является замененным элементом, определенным w3c. Однако он ведет себя как один, который обсуждается далее в этой статье.