Метка для каждого переключателя выравнивается до тех пор, пока текст метки не будет отображаться в одной строке. Я бы хотел выравнивание выглядеть так. Однако в настоящее время он выглядит как это при просмотре на маленьком экране.
Это выводит данные из базы данных MySQL в переключатели.
<?php
$stmt = mysqli_prepare($link, "SELECT id, name, price FROM cases ORDER BY price");
$stmt->execute();
$stmt->bind_result($case_id, $case_name, $case_price);
while($stmt->fetch()) {
echo '<li>
<input id = "'.$case_id.'" name = "config-prod" value = "'.$case_id.'" type = "radio">
<label class = "sub-label" for = "'.$case_id.'">'.$case_name.' [£'.$case_price.']</label>
</li>';
}
$stmt->close();
?>
CSS:
label {
margin-top: 5px;
color: #cfcfcf;
}
.input-list {
list-style-type: none;
width: 100%;
padding: 0;
margin: 0;
}
.input-list li input {
margin-right: 22px;
}
.input-list li input:checked + label {
color: rgb(255, 255, 255);
font-weight: 700;
font-size: 17px;
transition: color 0.5s ease;
}
Как я могу этого добиться? Спасибо.
Дайте позиции display: flex
. Я только что добавил это:
.input-list li {
display: flex;
}
label {
color: #cfcfcf;
}
.input-list {
list-style-type: none;
width: 100%;
padding: 0;
margin: 0;
}
.input-list li {
display: flex;
align-items: center;
padding: 3px 0;
}
.input-list li input {
margin-right: 22px;
}
.input-list li input:checked+label {
color: rgb(255, 255, 255);
font-weight: 700;
font-size: 17px;
transition: color 0.5s ease;
}
<ul class = "input-list">
<li>
<input id = "1" name = "config-prod" value = "1" type = "radio">
<label class = "sub-label" for = "1">One</label>
</li>
<li>
<input id = "2" name = "config-prod" value = "2" type = "radio">
<label class = "sub-label" for = "2">Two</label>
</li>
<li>
<input id = "3" name = "config-prod" value = "3" type = "radio">
<label class = "sub-label" for = "3">Three, a really long one... Really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really long...</label>
</li>
<li>
<input id = "4" name = "config-prod" value = "4" type = "radio">
<label class = "sub-label" for = "4">Fourth</label>
</li>
</ul>
@M.Tesrak Я сделал еще 2 правки... Удалите margin-top
с ярлыков. Добавлен align-items:center
и немного отступов к li
, по центру.
Спасибо. Выглядит лучше, но кнопка смещена от центра — она появляется над текстом.