HTML
Поместите тег <input>
перед тегом <label>
и добавьте <br>
после <label>
<input> <label></label> <br>
CSS
Основные стили:
input, label {height: [line-height]; line-height: [height]; vertical-align: middle}
Остальная часть CSS либо предлагается или требуется .Обязательные стили означают применение в текущем макете, поэтому он может работать, а может и не работать, в разных обстоятельствах.См. Комментарии в демонстрационной версии.
Кстати, когда <form>
передается значение каждого элемента управления формы (например, <input>
, <textarea>
, <select>
и т. Д.) С атрибутом [name]
,собрал, затем отправил на сервер.Группа переключателей обычно разделяет [name]
из-за своего единственного характера (обычно может быть выбрано только одно радио), но если другие типы элементов управления формой разделяют [name]
, то значения будут собраны в массив с указанным [name]
.Ничего плохого в этом само по себе, но только к вашему сведению, поскольку флажки имеют одинаковые значения [name=eq]
.
/* Suggested */
:root {
font: 400 16px/1.3 Verdana;
}
html,
body {
width: 100%;
height: 100%;
}
body {
overflow-x: hidden;
line-height: 1.3rem;
}
form {
display: flex;
flex-flow: row wrap;
}
fieldset {
width: fit-content;
}
/* Required */
input,
label {
display: inline-block;
font: inherit;
height: 1.3rem; /* Essential */
line-height: 1.3rem; /* Essential */
vertical-align: middle; /* Essential */
}
input {
width: 1rem;
}
[type=radio] {
vertical-align: bottom;
}
<form>
<fieldset>
<legend>Choose car rental</legend>
<input type="radio" name="carclass" value="mini">
<label>mini</label><br>
<input type="radio" name="carclass" value="economy">
<label>economy</label><br>
<input type="radio" name="carclass" value="compact">
<label>compact</label><br>
<input type="radio" name="carclass" value="suv">
<label>SUV</label><br>
<input type="radio" name="carclass" value="van">
<label>VAN</label><br>
</fieldset>
<fieldset>
<legend>Choose optional equipment</legend>
<input type="checkbox" name="eq" value="seat">
<label>child seat</label><br>
<input type="checkbox" name="eq" value="GPS">
<label>GPS</label><br>
<input type="checkbox" name="eq" value="dvd">
<label>DVD player</label><br>
</fieldset>
</form>