Потрясающе! Респект, жалко что пока, еще живы разные динозавры, которые это не поддерживают, придется верстать с поддержкой устаревших браузеров, а значит без этих возможностей.
Да нежели? «Бесконечность» вот 2.1 кб весит, ксс байт 500 минус один запрос к серверу + покажется моментально в т.ч. в режиме без графики. Минусы тоже есть конечно, но весить будет точно меньше.
В свг она весит около 200 байт. Используйте вектор уже, его даже в сам документ без доп. запросов внедрять можно при использовании правильного доктайпа.
Такие фигуры более гибки и лёгко могут быть редактированы посредством JS и CSS, нежели статичные картинки — анимиции, масштабирование, смена цвета и тд.
Уголки и треугольники можно свободно использовать не беспокоясь о динозаврах, только сложные фигуры будут весить тяжелее картинок.
Мне это не очень понятно. Во-первых, CSS код для рисования, скажем, сердечка явно превзойдёт по количеству байтов эквивалентный PNG, а во-вторых, создавать содержание при помощи CSS есть грехъ.
Круто вы все меня тут засрали, а себе орденов навешали.
Желаю вам хороших работ со знаком бесконечности «чисто цсской», на «нелоховских» браузерах радующих ваших посетителей.
Рекомендую еще вешать надписи:«Этот сайт оптимизирован под ..., если у вас другой, то на месте прямоугольника должна быть восьмерка». Т.е. не с прямоугольным вас марта, а с восьмым)
transform и radius более или менее понятны.
а вот треугольники несколько удивили, почему border-bottom выдает треугольник? нормальное техничное объяснение есть? (не то что легко находится в интернете — треугольники мол появляются и стремятся к друг другу если ширина/высота 0)
Не border-bottom выдает треугольник, а border-bottom одного цвета + border-left и border-right другого.
Когда вы указываете для разных бордеров разную ширину, их граница друг c другом делится в равных пропорциях.
1) Зачем делать #square с равными сторонами, если можно сделать #rectangle с равными сторонами? Ради экономии 3-х символов текста?
2) Что будет, если сделать #square с не равными сторонами?
div-ы выше сделать фоном можно разве что абсолютно/фиксированно позиционируя, да растягивая на весь экран. Точно так же и символы, которые привел savostin, могут стать фоновыми. И мне явно больше нравится последний вариант.
Дык, css из топика тоже нифига фоном не становится.
Вернее становится, как отдельный слой.
Впрочем как и символ.
Вот только символ масштабировать можно. Кстати вместе с текстом.
Да, и углы тоже. Например, мне нужен был правильный двенадцатиугольник, угол четко 30 градусов.
И можно не только равнобедренные треугольники/трапеции делать, как в примерах.
Кстати, это все гораздо лучше представляется, если порисовать в векторных редакторах. Из простых фигур получаются сложные.
Кстати, недавно был конкурс — GDD OpenCall (HTML5), и там главное условие было использовать dymaxion map. В голове возникла идея сделать на чисто CSS3, но очень сложно было найти способ использовать именно треугольники, но на них закинуть картинку.
В результате пришлось использовать немножко канвас, но вышло вот такое:
Интересно, а как можно вставить картинку в параллелограмм сделанный с помощью css3 таким образом, чтобы сама картинка не трансформировалась?
Лично я нашел только способ с компенсацией skew для картинки. Но тогда нужно задавать высоту равную половине высоты картинки.
Геометрические фигуры на CSS