Почему входные элементы могут иметь размер, если они являются встроенными элементами?
У меня сложилось впечатление, что высота встроенных элементов не может быть изменена, но я могу сделать это с <input type="text"/>
элементы.
Правильно ли я это <input type="text"/>
элементы встроены?
Если так, то чем они отличаются <span></span>
элементы в том, как они могут или не могут быть изменены.
3 ответа
input
элемент inline-block
по умолчанию нет inline
,
С другой стороны, такой элемент, как span
, является inline
по умолчанию.
width
/ height
из inline-block
элемент, такой как input
можно изменить (пример).
В то время как inline
элемент, например, span
, не может быть изменено по умолчанию, так как его размеры определяются " отображаемым содержимым внутри них ". (пример).
Это свойство [width] не применяется к незамещенным встроенным элементам. Ширина содержимого блоков незаменяемого встроенного элемента - это ширина отображаемого содержимого внутри них (до любого относительного смещения дочерних элементов). Напомним, что встроенные блоки перетекают в линейные блоки. Ширина линейных блоков задается содержащим их блоком, но может быть укорочена из-за наличия поплавков. - ссылка W3
По умолчанию они отображаются как inline-block. Вот почему вы можете указать ширину. Вы можете увидеть это в Chrome Dev Tools, например.
Есть разница между inline
а также inline-block
,
Вы можете изменить height
из inline-block
Между тем вы не можете изменить inline
элементы.
Поэтому я думаю, что то, что вы изменили, может быть inline-block
элемент.
Вот вам скрипка!