2016-12-30 5 views
0

Я пытаюсь выровнять 2 текста ввода, которые имеют удивительный значок рядом с ними.Не удается выровнять текстовый ввод с удивительными значками рядом с ними

<span i class="fa fa-link fa-lg"> 
    <input id="product" type="text" placeholder="Product" required/>    
</span> 
<br><br> 
<span i class="fa fa-desktop fa-lg"> 
    <input id="desktop" type="text" placeholder="Desktop" required/>    
</span> 

enter image description here

Я хотел бы иметь входы выравнивание по левому краю, независимо от ширины значка.

+0

они уже выравнивание по левому краю .. !! не может получить то, что на самом деле вам нужно? –

+0

Что делать, если вы добавляете класс «fa-fw» к обоим значкам? Это определяет фиксированную ширину значков. – seemly

ответ

2

Использование fa-fw шрифт-удивительный служебный класс.

<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.css" rel="stylesheet"/> 
 
<span> 
 
<i class="fa fa-link fa-fw fa-lg"></i> 
 
<input id="product" type="text" placeholder="Product" required/>    
 
</span> 
 
<br> 
 
<br> 
 
<span> 
 
<i class="fa fa-desktop fa-fw fa-lg"></i> 
 
<input id="desktop" type="text" placeholder="Desktop" required/>    
 
</span>

2

Вы должны сделать значки отдельным элементом отдельно, чтобы они могли образовать элемент блока с фиксированной шириной.

либо структура должна быть следующим:

<span> 
    <i class="fa fa-link fa-lg"></i> 
    <input id="product" type="text" placeholder="Product" required/>    
</span> 
<br><br> 
<span> 
    <i class="fa fa-desktop fa-lg"></i> 
    <input id="desktop" type="text" placeholder="Desktop" required/>    
</span> 

И дает фиксированную ширину шрифта по удивительной иконке:

i { 
    width: 20px; 
} 
+0

Нет необходимости добавлять новые CSS. Просто используйте шрифтовый класс утилиты «fa-fw» (как упоминается в файлах font-size http://fontawesome.io/examples/#fixed-width) – seemly

+1

@seemly Да, но предоставление настраиваемого CSS делает ваш код более гибким для требований , Что делать, если я не хочу «width: 1.28571429em», но что-то еще. :) – nashcheez

2

В настоящее время, ваш HTML является недействительным.

Обязательно используйте класс fontavesome fa-fw, чтобы применить фиксированную ширину к значку. (Фиксированная ширина, как указано в документации: http://fontawesome.io/examples/#fixed-width)

Попробуйте следующий код (как в пример: https://jsfiddle.net/0vwfp6e2/1/):

<label> 
    <i class="fa fa-link fa-lg fa-fw"></i> 
    <input id="product" type="text" placeholder="Product" required/> 
</label> 

<label> 
    <i class="fa fa-desktop fa-lg fa-fw"></i> 
    <input id="desktop" type="text" placeholder="Desktop" required/> 
</label>