TGViewer
mefody.dev mefody.dev @mefody_dev · 5.39K subscribers
Post #201 3.99K
Адаптивные графики на HTML и CSS

Матиас Шафер делится тем, как из бар-чартов (диаграммы с горизонтальными полосками, их ещё горизонтальными гистограммами называют) на SVG получилось сделать адаптивный вариант на HTML и CSS. Причём это хороший пример для полезного применения многострадальных сабгридов.

- Гриды позволяют размещать подписи, значения и сами полоски как угодно. Хоть влево, хоть вправо, хоть одно под другим.

- Адаптивность реализуется довольно просто, достаточно переписать пару свойств по разметке грида.

- Доступность из коробки, потому что по сути график — это список значений. Как раз для списка сабгриды хорошо и подошли.

- При желании любое значение можно особым образом выделить, так как это обычный CSS. Добавил класс на ряд — и вот уже очень важное значение на графике выглядит тоже очень важно.

- В гридах можно накладывать одни элементы поверх других, поэтому получилось сделать шкалу с промежуточными значениями.

- Я бы добавил чуть больше математики на calc и CSS-переменных, чтобы ещё меньше писать лишнего в самом HTML. Прям просится в демках поправить.

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

- При желании такой же подход можно применить и к колоночным диаграммам. Или даже превращать их в горизонтальные гистограммы, когда экран маленький, а колонок много.

Хороший пример для вдохновения, чтобы с чего-то начать и доработать под себя.

https://9elements.com/blog/responsive-bar-charts-in-html-and-css/
9elements Responsive bar charts in HTML and CSS Combining finest craftsmanship with elegant design to ship innovative digital experiences.
  • 👍 26
  • 🔥 9
  • ❤ 3
  • 🌚 1
More from @mefody_dev
  1. Sep 25, 2026Эффект одометра Люблю такие демки, когда на чистом CSS делают что-то необычное, для чего я…
  2. Sep 23, 2026Цена ошибок гидрации В React есть много ухищрений, чтобы серверный кусок страницы обновилс…
  3. Sep 16, 2026Какие анимации более производительные: CSS или JS? Лучше пару раз увидеть, чем много откуд…
  4. Sep 14, 2026Единица измерения lh Если коротко, то 1lh = 1 line height. И это не размер шрифта, который…
  5. Sep 11, 2026<mermaid-element> Ещё одна полезная библиотека. Брамус собрал кастомный элемент, которому…
  6. Sep 10, 2026MicroLighter Дейв Руперт собрал маленькую библиотечку, которая делает подсветку кода. «Ещё…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →