<MyRusakov.ru />

Программирование на Python с Нуля до Гуру

Программирование на Python с Нуля до Гуру

Данный курс научит Вас программировать на языке Python, который крайне желательно знать любому, кто хоть иногда имеет дело с компьютерами. Курс состоит из 6 разделов, в которых Вы с нуля освоите этот язык и сможете создавать самые разные программы для самых разных задач любой сложности.

К курсу прилагается множество упражнений и все исходники из уроков.

Наконец, Вы получите ещё несколько бонусов: "Создание калькулятора на Python", "Создание игры на Python" и "Правильная работа со справочником".

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Выравнивание элементов формы на flex

Выравнивание элементов формы на flex

С технологией флексбоксов стало намного проще не только адаптивно верстать сайты, но и выравнивать элементы. Раньше с этим было трудновато. Давайте посмотрим как можно легко и красиво на флексбоксах выровнять элементы формы.

HTML разметка формы

Обернем форму в блок с классом form__wrapper. Сформируем ряды формы из маркированных списков. Один ряд соответствует одному тегу li. Внутри тегов li поместим метки (label) и поля ввода (input). В общей сложности у нас будет 4 ряда, в последнем из которых - кнопка (button).

<div class="form__wrapper">
<form>
  <ul>
  <li class="form__line">
    <label for="name">Name</label>
    <input type="text" id="name">
  </li>
  <li class="form__line">
    <label for="phone">Phone</label>
    <input type="tel" id="phone">
  </li>
  <li class="form__line">
    <label for="email">Email</label>
    <input type="email" id="email">
  </li>
  <li class="form__line">
    <button type="submit">Submit</button>
    </li>
  </ul>
</form>
</div>

CSS стили для формы

Пускай контейнер для формы будет шириной в 300 пикселей с отступом в 20 пикселей от нижнего края браузера и по горизонтали расположен в центре.

.form__wrapper {
    width: 300px;
    margin: 20px auto;
    background-color: #f5f5f5;
    border-radius: 5px;
    font-size: 16px;
}

Убираем маркерные дефолтные точки.

ul {
    list-style-type: none;
}

Чтобы текст и поля ввода не прилипали к краям контейнера и друг к другу, зададим общему ряду, блоку для меток и инпуту внутренние отступы.

.form__line {
    padding: 8px;
}

.form__line > label {
    padding: 8px 16px 8px 0;
}

.form__line > input {
    padding: 8px;
}

Немного приукрасим кнопку.

.form__row > button {
    background: #808080;
    color: #fff;
    border: 5px;
    padding: 8px;
}

Без какого-либо выравнивания наша форма будет выглядеть неаккуратно: поля формы и кнопка стремятся прибиться к правому краю. Такое поведение для элементов формы естественное однако, нас оно совершенно не устраивает. В любом случае, вряд ли дизайнер вот такое безобразие допустит на макете для заказчика. Поэтому необходимо знать, как управлять элементами формы при верстке.

Выравнивание элементов формы на flex.

Флекс форма

Далее сделаем из обычной формы, флекс форму (гибкую). Свойство justify-content прибъет к левому краю, хаотично разбросанные поля ввода. Создадим из класса form__line, четыре flex-контейнера.

.form__line {
    display: flex;
    justify-content: flex-end;
}

Выравнивание элементов формы на flex.

Первые три flex-контейнера заполнят flex-элементы (label + input), а последний контейнер - кнопка.

Выравнивание элементов формы на flex.

Добавим сокращенную запись flex: 1 к меткам, а для полей ввода flex: 2. Эти свойства управляют размерами элементов, делят между собой свободное пространство в соотношении 1 к 2. В этой статье, вы можете почитать о том, как работают flex-grow, flex-shrink и flex-basis.

.form-line > label {
    flex: 1;
}
.form-line > input {
    flex: 2;
}

Выравнивание элементов формы на flex.

При уменьшении окна браузера форма получается адаптивной.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.