.wrapper{
display: grid;
grid-template-rows: 1fr 1fr 1fr;
grid-template-columns: 1fr 1fr 1fr;
grid-gap: 2vw; /* это своего рода margin */
}
Зарегистрируйтесь или войдите
Регистрация через Google
Регистрация через Facebook
Регистрация через почту
Отправить без регистрации
Почта
Необходима, но никому не показывается
Отправить без регистрации
Почта
Необходима, но никому не показывается
By clicking “Отправить ответ”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.
как не надо • Фиксированная высота и absolute для текстовых блоков
Не задавайте текстовым блокам фиксированную высоту #
Почему? #
При увеличении количества текста он вывалится наружу и может наложиться на нижележащие элементы.
Как это увидеть? #
Можно отредактировать исходный HTML, а можно выполнить в консоли браузера такую команду:
document.body.contentEditable = true
После этого вы сможете отредактировать любой текст на странице.
Добавим текст:
При фиксированной высоте текст не может растянуть блок и вываливается.
А как надо? #
Решение зависит от того, что нужно сделать. Если у блока по макету есть минимальная высота, но контента недостаточно, чтобы его растянуть, используйте min-height:
min-height позволит добиться соответствия макету, а при добавлении контента блок просто вырастет вниз.
Ещё это может быть полезно как временное решение, чтобы разложить блоки по макету, до того, как будет стилизовано содержимое, после этого min-height убирается.
Если же контента достаточно, min-height не нужен, достаточно задать стили для текста и padding для блока, и его размеры будут определяться содержимым.
Если у блока есть явные границы, padding нужно задавать со всех сторон, чтобы при добавлении текста он не упёрся в края:
Подопытная кнопка с минимальной шириной и высотой
Изменим текст: Не хватает паддингов слева и справа
Не хватает вертикальных паддингов
Все паддинги на месте, добавление текста ничего не ломает
Не используйте
absolute для позиционирования текстовых блоков #
Почему? #
При абсолютном позиционировании блок не влияет на размеры родителя. При увеличении количества текста он не сможет растянуть родительский блок и вывалится наружу.
Как это увидеть? #
Как и в предыдущем случае, можно отредактировать исходный HTML или использовать команду в консоли:
document.body.contentEditable = true
После чего добавить текст в интересующий элемент.
Абсолютно спозиционированный элемент не может растянуть родительский блок.
А как надо? #
В этом случае лучше перенести position:absolute на картинку и добавить min-height, чтобы блок не схлопывался по высоте текста (иначе может вывалиться картинка):
Проверяем с коротким текстом: min-height не даёт блоку схлопнуться.Проверяем с длинным текстом: текст растягивает блок, и ничего не выпадает.
Итого
Не задавайте текстовым блокам фиксированную высоту, лучше использовать min-height.
По возможности, не используйте absolute для позиционирования текстовых блоков. Если текст должен наползать на картинку, абсолютное позиционирование лучше задать картинке.
javascript — Переместить блоки в html
спросил
Изменено
1 год, 3 месяца назад
Просмотрено
484 раза
введите здесь описание изображения. Я хочу переместить эти блоки в центр страницы. Я использовал html и попутный ветер css. Я пробовал выравнивание по центру, но оно не работает. пожалуйста, помогите. Вот html-код. [
<основной>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
<дел>
главная>
javascript
html
jquery
css
попутный ветер-css
1
Добавить центр выравнивания в класс, где целые блоки имеют родительский элемент div, то есть строку номер 4
Зарегистрируйтесь с помощью Google Зарегистрироваться через Facebook
Зарегистрируйтесь, используя электронную почту и пароль
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.
html. Есть ли более эффективный способ перемещения элементов в CSS?
спросил
Изменено
2 года, 7 месяцев назад
Просмотрено
15 тысяч раз
Я довольно большой новичок в HTML/CSS, и я создаю свой первый проект, составляя резюме. У меня есть все, что мне нужно, в HTML, и теперь я организую и перемещаю вещи в CSS. Чтобы переместить материал в нужное место, я в значительной степени угадываю и проверяю, используя верх/низ/лево/право и настраивая пиксели относительно относительного положения. Есть ли более эффективный способ перемещения вещей по странице, чем этот?
Использование «положения: относительного» и «сверху/слева/справа/снизу» для построения макета не является хорошей практикой. Я думаю, что это оправдано только в нескольких случаях и для незначительных настроек позиционирования.
Он не сможет должным образом адаптироваться к разным размерам экрана, и его будет сложно поддерживать, когда вы захотите изменить эту страницу в будущем.
В вашем случае, я думаю, вы пытаетесь разместить все три заголовка h3 в одной горизонтальной строке, используя относительное расположение, потому что иначе они были бы на вертикальной линии. Это потому, что h2/h3/h4… по умолчанию имеют стиль «display:block», что означает, что содержимое после этого элемента будет перемещаться под ним.
Если вы хотите, чтобы все они были в одной строке, вы можете настроить теги h3 на использование «display: inline-block», что не будет перемещать следующие заголовки на следующую строку и позволит вам установить ширину для каждого заголовка. Таким образом, вы сможете получить их в одной строке.
Также при применении стиля к нескольким элементам внутри контейнера вы можете использовать селектор для вашего контейнера, за которым следует другой селектор для тега или классов, на которые вы хотите повлиять:
. SEE h3 { display:inline-block; }
Так вы сэкономите время и избежите дублирования стилей
. Если вы разрабатываете дизайн для мобильных устройств, ознакомьтесь с https://developers.google.com/web/fundamentals/design-and-ui/. отзывчивый/. Я бы сказал, что вам понадобятся хорошие знания CSS, прежде чем начать это.
Используйте преобразование : translate(x, y) или translateX() и translateY() .
CSS — это сокращение от каскадных таблиц стилей. Каскадность означает, что каждый новый слой наследуется от предыдущего. Лучший способ сделать свой стиль — это определить базовые классы и стилизовать их. Следующим шагом будет сортировка ваших элементов внутри этих базовых классов.
Думаю, вам нужно присвоить своему телу атрибут «позиция: относительное»; а затем продолжить.
CSS нет. вариантов управления потоком вашего контента на экране. Большую часть времени вы будете играть с ними, чтобы добиться максимальной точности. Вот серия видео, которые я считаю наиболее полезными для начинающих. Это DevTips и содержит информацию. о позиционировании, плавающих элементах и очистке, Flexbox (это довольно удобный способ настроить поток веб-сайта), модулях CSS и т. д. Стоит проверить эту серию.
Вот ссылка:
Советы разработчиков: руководство по позиционированию
Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google Зарегистрироваться через Facebook Зарегистрируйтесь, используя электронную почту и пароль
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.