Я хочу разместить флажок и тег абзаца в одной строке, используя этот код
.checkbox-container {
display: flex;
align-items: flex-start;
}
.checkbox-container input[type = "checkbox"] {
margin-right: 8px;
/* Optional: Add space between checkbox and paragraph */
}
<div class = "checkbox-container">
<input type = "checkbox" id = "myCheckbox">
<p>This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph
next to a checkbox.</p>
</div>
вывод такой
Здесь я хочу начать следующую строку с начала, как показано на изображении.
Любое решение. Спасибо.
@CBroe Не могли бы вы проверить еще раз, я добавил скриншот во второй строке, мне нужно, чтобы буквы начинались с исходной позиции
Тогда использование flexbox в контейнере, конечно, совершенно неправильный выбор.
Что вы можете сделать, так это изменить тег <p>
на display: inline
, таким образом оба встроенных элемента сольются в одну строку.
.checkbox-container p {
display: inline;
margin-inline-start: 8px;
}
<div class = "checkbox-container">
<input type = "checkbox" id = "myCheckbox">
<p>This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph
next to a checkbox.</p>
</div>
Правильный способ — изменить тег <p>
на <label>
и назначить атрибут for
тому же id
из <input>
, таким образом, по умолчанию они находятся в одной строке, щелчок по тексту также автоматически переключит флажок.
.checkbox-container input[type='checkbox'] {
margin-inline-end: 8px;
}
<div class = "checkbox-container">
<input type = "checkbox" id = "myCheckbox">
<label for = "myCheckbox">This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph next to a checkbox.This is a paragraph
next to a checkbox.</label>
</div>
Спасибо, это работает, не могли бы вы сообщить мне, можем ли мы добавить немного места между флажком и тегом абзаца?
Вы все равно можете добавить немного горизонтального интервала, добавив margin-right: 8px
(или margin-inline-end
) к <input>
. Как показано в обновленном ответе.
«Выход такой» — а что насчет того, что это не так, как вы хотите? Если не считать того, что вы вручную добавили эти красные линии, второе изображение выглядит совершенно идентично?