адаптивный input с внутренним отступом

djdiplomat
На сайте с 05.08.2009
Offline
136
6143

Мне нужно задать текстовому инптуту внутренний отступ, а также сделать его адаптивным, чтобы он занимал ровно 100% ширины блока в котором находится.

Загвоздка в том, что 2 этих условия одновременно выполнить не получается.

Если у input свойство width: 100% то за счет padding 5px - инпут вылезает за границы блока.

Если убираем паддинг, то в блок мы вписываемся нормально, вот только буквы внутри инпута прилипают к границе.

Как быть?

Изменять ширину width: 100% не вариант, т.к. медийные запросы на каждый пиксель не пропишешь, а требуется именно так, чтобы инпут был 100% в диапазоне родительского блока от 100 до 1920px

Z0
На сайте с 03.09.2009
Offline
827
#1

width: 98%; padding: 1% чем вас не устраивает?

temniy
На сайте с 15.03.2008
Offline
265
#2

Например, так -

<div style="width: 100px;">

<input style="width:100%;padding: 5px;max-width: 86px;" value="тестовый текст">
</div>

max-width = ширина контейнера минус 14px

⭐ Лучший хостинг от 4 евро, VPS от 6 евро - разные локации - любые карты - скидки до 20% - https://fornex.com/c/ffi2e3/ru/services/
TA
На сайте с 12.06.2009
Offline
116
TiA
#3
djdiplomat:
Как быть?

Укажите для тега input стиль:


display: block;
box-sizing: border-box;
width: 100%;
padding: 5px;
Профессиональная верстка и разработка сайтов на WordPress (http://www.maultalk.com/topic139110s0.html)
Gerga
На сайте с 02.08.2015
Offline
94
#4

djdiplomat, или так:


width: calc( 100% - 10px );
padding: 5px;

:)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий