Как сделать таблицу с помощью flex
Перейти к содержимому

Как сделать таблицу с помощью flex

  • автор:

Flex таблицы как делать

введите сюда описание изображения

Доброй ночи. Недавно начал изучать html и столкнулся с такой проблемой. Не могу понять как тут сделать.Пробовал таблицу

Но получается что то не то . Со всеми остальными заданиями вопросов меньше.Может кто то помочь составить код для дальнейшего анализа ? или очень подробно разжевать?

Отслеживать

2,668 3 3 золотых знака 14 14 серебряных знаков 38 38 бронзовых знаков

задан 17 мая 2020 в 19:05

user389240 user389240

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

А зачем тут таблица? Обычными блоками можно сделать:

.container < width: 1100px; display: flex; flex-direction: column; align-items: center; >.blocks < display: flex; flex-wrap: wrap; justify-content: space-between; >.block
 

Цифры и факты

86 миллиардов
Число нейронов в мозге человека
86 миллиардов
Число нейронов в мозге человека
86 миллиардов
Число нейронов в мозге человека
86 миллиардов
Число нейронов в мозге человека
86 миллиардов
Число нейронов в мозге человека
86 миллиардов
Число нейронов в мозге человека
86 миллиардов
Число нейронов в мозге человека
86 миллиардов
Число нейронов в мозге человека

Замена таблиц на flexbox

Давно на смену табличной верстке пришли другие технологии, но иногда ее еще используют т.к. «под рукой нет простого и понятного примера замены».

Поэтому ниже простая демонстрация замены таблицы на flexbox.

Для начала пример обыкновенной таблицы:

 
Left 1 Center 1 Right 1
Left 2 Center 2 Right 2
Left 3 Center 3 Right 3

pic1

Пример таблицы с привычной для DIV’ов группировкой элементов

 .soflex1 
Left 1
Left 2
Left 3
Center 1
Center 2
Center 3
Right 1
Right 2
Right 3

Пример таблицы с привычной для TABLE’ов группировкой элементов

 .soflex2 > div 
Left 1
Center 1
Right 1
Left 2
Center 2
Right 2
Left 3
Center 3
Right 3

Весь код разом (без justify-content: space-between;):

01.html (Download)

     table td, .soflex1 div div, .soflex2 div div < border: 1px solid #a9a6a3; padding: 3px; >.soflex1 < flex-direction: row; display: flex; >.soflex2 > div  
Left 1 Center 1 Right 1 Left 2 Center 2 Right 2 Left 3 Center 3 Right 3
Left 1
Left 2
Left 3
Center 1
Center 2
Center 3
Right 1
Right 2
Right 3

Left 1
Center 1
Right 1
Left 2
Center 2
Right 2
Left 3
Center 3
Right 3

Бонус

Иногда нужно повлиять на отображение «колонок» в зависимости от ширины экрана:

.soflex111 < flex-direction: row; display: flex; justify-content: space-between; >@media only screen and (max-width: 800px) < .soflex111 < flex-direction: column; >>

Как сделать двухколончатую таблицу на flexbox

Бывает нужен блок, который на больших экранах выглядит как таблица с несколькими колонками, а на экранах с маленьким разрешением как одна вертикальная полоса.

Ниже будет пример того, как это можно сделать с использованием css свойств flexbox.

Не буду долго ходить вокруг, вот как это будет выглядеть на большом разрешении:

pic1

А так, если экран меньше заданной границы:

pic1

И собственно сам код:

 
Всё онлайн

Не надо никуда ходить и ждать курьера. Пара минут на анкету, ещё пара на решение.

Всё онлайн

Не надо никуда ходить и ждать курьера. Пара минут на анкету, ещё пара на решение.

/* Тестовое оформление */ .flex_grid < border: 20px solid green; flex-basis: 200px; >.flex_grid .item < border: 1px solid red; >/* Функционал */ .flex_grid < width: 1000px; margin: 0 auto; >.flex_grid .item < display: flex; margin-bottom: 20px; >.flex_grid .item .text < display: flex; flex-direction: column; justify-content: center; >.flex_grid .img < min-width: 120px; margin: 0 25px; display: flex; flex-direction: column; justify-content: center; /*flex: 0 0 200px;*/ flex-grow: 0; flex-shrink: 0; flex-basis: 200px; >.flex_grid img < display: block; max-width: 100%; align-self: center; /* Значение по умолчанию stretch и картинку раздирает */ >/* Пример вертикального отображения */ @media (max-width: 960px ) < .flex_grid < width: auto; >.flex_grid .item < display: flex; flex-direction: column; >.flex_grid .item .text < align-items: center; >.flex_grid .img < flex-basis: auto; >>

Готовый результат, можно скачать архивом.

Как сверстать таблицу с использованием Flexbox

Узнайте, как сверстать адаптивную и гибкую таблицу с использованием Flexbox всего за 3 простых шага в этой статье для новичков!

Flexbox-created table on a computer screen

Алексей Кодов
Автор статьи
2 июня 2023 в 11:46

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

Шаг 1: Создание HTML-структуры

Для начала создадим базовую HTML-структуру таблицы. Нам понадобятся обертка для таблицы ( .table ), строки ( .row ) и ячейки ( .cell ):

 
A1
B1
C1
A2
B2
C2
A3
B3
C3

Веб-разработчик: новая работа через 9 месяцев
Получится, даже если у вас нет опыта в IT

Шаг 2: Применение стилей Flexbox

Теперь давайте применим стили Flexbox к нашей HTML-структуре. Сначала сделаем обертку таблицы и строки flex-контейнерами:

.table, .row

Затем установим для ячеек равное распределение пространства внутри строки:

.cell

�� Не забудьте добавить стили для отступов, границ и выравнивания текста в ячейках, чтобы сделать таблицу более читабельной:

.cell

Шаг 3: Адаптивность и переполнение

Теперь, когда основная структура и стили готовы, давайте сделаем таблицу адаптивной и обработаем случаи с переполнением содержимого ячеек.

Для этого добавим свойство flex-wrap к строкам таблицы:

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

@media (max-width: 768px) < .cell < flex: 0 0 50%; >>

Вот и все! Теперь у вас есть таблица, сверстанная с использованием Flexbox. Это позволяет создавать гибкие и адаптивные таблицы, которые хорошо выглядят на различных устройствах и экранах. ��

Веб-разработчик: новая работа через 9 месяцев
Получится, даже если у вас нет опыта в IT

Не забудьте посетить замечательную школу по веб-разработке, которая поможет вам усовершенствовать свои навыки и стать профессионалом в этой сфере.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *