Как нарисовать круг с помощью HTML5 и CSS3?
Можно ли также поместить внутрь текст?
html
css
geometry
css-shapes
Сергей Метлов
источник
источник
Ответы:
Вы не можете нарисовать круг как таковой. Но можно сделать что-то похожее на круг.
Вам нужно будет создать прямоугольник с закругленными углами (переходными отверстиями
border-radius
), которые составляют половину ширины / высоты круга, который вы хотите создать.источник
border-radius: 50%;
работает хорошо, измените размер по желанию. Для цвета можно использоватьbackground-color
илиborder
.В HTML 5 это вполне возможно . Возможны следующие варианты: встроенный SVG и
<canvas>
тег .Чтобы нарисовать круг во встроенном SVG:
Обведите
<canvas>
:источник
Вот несколько кругов Юникода, которые вы можете использовать:
Больше фигур здесь .
Вы можете наложить текст на круги, если хотите:
Показать фрагмент кода
Вы также можете использовать собственный шрифт (например, этот ), если хотите, чтобы он выглядел одинаково в разных системах, поскольку не на всех компьютерах / браузерах установлены одинаковые шрифты.
источник
border-radius:50%
если вы хотите, чтобы круг приспосабливался к любым размерам контейнера (например, если текст переменной длины)Не забывайте
-moz-
и-webkit-
префиксы!источник
По состоянию на 2015 год вы можете сделать это и центрировать текст с помощью всего 15 строк CSS ( Fiddle ):
Без каких-либо
-webkit-
s это работает в IE11, Firefox, Chrome и Opera, и это допустимый HTML5 (экспериментальный) и CSS3.То же самое в MS Edge (2020).
источник
источник
Вы можете использовать атрибут border-radius, чтобы задать ему радиус границы, эквивалентный радиусу границы элемента. Например:
(Причина использования расширений -moz и -webkit заключается в поддержке версий Gecko и Webkit до CSS3-final.)
На этой странице есть больше примеров . Что касается вставки текста, вы можете это сделать, но вы должны помнить о позиционировании, так как в большинстве браузеров модель заполнения окна по-прежнему использует внешний квадрат.
источник
Технически не существует способа нарисовать круг с помощью HTML (нет
<circle>
тега HTML), но круг можно нарисовать.Лучший способ нарисовать его - добавить
border-radius: 50%
в тег, напримерdiv
. Вот пример:источник
border-radius: 50%;
превратит все элементы в круг, независимо от размера. По крайней мере, покаheight
иwidth
цели совпадают, иначе она превратится в овал .Примечание : префиксы браузера больше не нужны для border-radius
В качестве альтернативы вы также можете использовать
clip-path: circle();
для превращения элемента в круг. Даже если у элемента большеwidth
чемheight
(или наоборот), он все равно станет кругом, и не овалом.Примечание : клип-путь не (пока) поддерживается всеми браузерами
Вы можете разместить текст внутри круга, просто написав текст внутри тегов цели,
например:
Если вы хотите центрировать текст в круге, вы можете сделать следующее:
источник
Вы можете использовать свойство border-radius или создать div с фиксированной высотой и шириной и фоном с кругом png.
источник
Просто сделайте следующее в тегах скрипта:
И вот, у вас есть круг.
источник
источник
источник
простой и начинающий :)
источник
источник
Если вы используете sass для написания CSS, вы можете:
Какие выходы:
Попробуйте здесь: https://www.sassmeister.com/
источник