Як вирівняти тексти всередині вводу?


208

Для всіх вводів за замовчуванням текст, який ви заповнюєте, починається зліва. Як змусити його почати праворуч?


2
Це зміна полів на сумісність з мовою справа наліво?
С. Олбано

введення {вирівнювання тексту: праворуч; }
Расіка

Відповіді:


327

Використовуйте властивість вирівнювання тексту у своєму CSS:

input { 
    text-align: right; 
}

Це буде діяти на всіх входах сторінки.
В іншому випадку, якщо ви хочете вирівняти текст лише одного введення, встановіть стиль вбудованого стилю:

<input type="text" style="text-align:right;"/> 

24

Спробуйте це у своєму CSS:

input {
text-align: right;
}

Щоб вирівняти текст у центрі:

input {
text-align: center;
}

Але його слід вирівняти ліворуч, оскільки це за замовчуванням - і, здається, є найбільш зручним для користувачів.



9

Тут прийнята відповідь правильна, але я хотів би додати трохи інформації. Якщо ви використовуєте бібліотеку / фреймворк, наприклад завантажувальний інструмент, для цього можуть бути вбудовані класи. Наприклад, bootstrap використовує text-rightклас. Використовуйте його так:

<input type="text" class="text-right"/> 
<input type="number" class="text-right"/>

Як примітка, це працює і для інших типів введення, як числових, як показано вище.

Якщо ви не використовуєте гарний фреймворк, як завантажувальний інструмент, тоді ви можете створити власну версію цього допоміжного класу. Подібно до інших відповідей, але ми не збираємось додавати їх безпосередньо до класу введення, тому він не застосовуватиметься до кожного введення на вашому веб-сайті чи сторінці, це може бути не бажаною поведінкою. Таким чином, це створило б хороший простий клас css для того, щоб вирівняти речі правильно, не потребуючи вбудованого стилю та не впливаючи на кожне поле введення.

.text-right{
    text-align: right;
}

Тепер ви можете використовувати цей клас точно так само, як і вхідні дані вище class="text-right". Я знаю, що це не рятує від багатьох клавіш, але ваш код чистіший.


3

Якщо ви хочете вирівняти його праворуч після того, як текст втрачає фокус, ви можете спробувати використовувати модифікатор напрямку. Це покаже праву частину тексту після втрати фокусу. наприклад, корисно, якщо ви хочете показати ім'я файлу великим шляхом.

input.rightAligned {
  direction:ltr;
  overflow:hidden;
}
input.rightAligned:not(:focus) {
  direction:rtl;
  text-align: left;
  unicode-bidi: plaintext;
  text-overflow: ellipsis;
}
<form>
    <input type="text" class="rightAligned" name="name" value="">
</form>

На даний момент не підтримується селектор: Підтримка браузера


0

@ Html.TextBoxFor (model => model.IssueDate, новий {@class = "form-control", ім'я = "inv_issue_date", id = "inv_issue_date", назва = "Вибрати дату випуску рахунка-фактури", placeholder = "dd / mm / yyyy ", style =" text-align: center; "})


-5

Без CSS: Використовуйте властивість STYLE для введення тексту

STYLE = "Вирівнювання тексту: праворуч;"


11
Це все ще css, просто вбудований css.
Мартін Хансен

2
Атрибут стилю використовується для створення вбудованого CSS. Код text-align:right, безумовно, CSS.
Рон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.