Задать вопрос
@pqgg7nwkd4

Почему не работает одновременное указание left и right для элементов формы?

Есть position:relative-элемент.
Внутри него элементы формы, например, select, для которого задано position:absolute; left:1cm; right:1cm.
Браузер (Хром и ФФ) игнорируют right:1cm и не растягивают элемент. Почему?

P.S.
Меня интересует причина, а не как обойти это ограничение.

Вопрос примером:
https://jsfiddle.net/j5phoLsy/4/
7786e01e5ede43e6b729238ad5577da3.png
<div>
  <select><option>Not works</option></select>
  <input value="Not works">
  <fieldset>Works</fieldset>
</div>

div {
  position:relative;
  border:1px solid blue;
  width: 10cm;
  height: 6cm;
}
select {
  position:absolute;
  top: 1cm;
  left: 1cm;
  right: 1cm;
}
input {
  position:absolute;
  top: 2cm;
  left: 1cm;
  right: 1cm;
}
fieldset {
  position:absolute;
  top: 3cm;
  left: 1cm;
  right: 1cm;
}
  • Вопрос задан
  • 1005 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
Смею предположить, что это из-за того, что input, textarea, select - являются замещаемыми элементами.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
sergski
@sergski
web-developer
А почему вы решили, что задание позиционирования должно растягивать элемент? left и right указывают положение и приоритет имеет левый край.
зы и не используйте cm
Ответ написан
LEFT и Right - используются для задания позиции элементу . К примеру : left: 10px; Значит , что блок будет расположен в левом краю родителя на расстоянии 10 px .
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы