¿Cómo se dibuja un círculo usando HTML5 y CSS3?
¿También es posible poner texto dentro?
html
css
geometry
css-shapes
Sergey Metlov
fuente
fuente
Respuestas:
No se puede dibujar un círculo per se. Pero puedes hacer algo idéntico a un círculo.
Tendría que crear un rectángulo con esquinas redondeadas (vía
border-radius
) que sean la mitad del ancho / alto del círculo que desea hacer.fuente
border-radius: 50%;
funcionó bien, cambie el tamaño como desee. Para el color puede utilizarbackground-color
oborder
.Es bastante posible en HTML 5 . Sus opciones son: SVG y
<canvas>
etiqueta incrustados .Para dibujar un círculo en SVG incrustado:
Circule en
<canvas>
:fuente
Hay algunos círculos Unicode que puedes usar:
Más formas aquí .
Puede superponer texto en los círculos si lo desea:
Mostrar fragmento de código
También puede usar una fuente personalizada (como esta ) si desea tener una mayor probabilidad de que se vea igual en diferentes sistemas, ya que no todas las computadoras / navegadores tienen las mismas fuentes instaladas.
fuente
border-radius:50%
si desea que el círculo se ajuste a las dimensiones que obtenga el contenedor (por ejemplo, si el texto es de longitud variable)¡No olvide los prefijos
-moz-
y-webkit-
!fuente
A partir de 2015, puede hacerlo y centrar el texto con tan solo 15 líneas de CSS ( Fiddle ):
Sin ningún
-webkit-
s, esto funciona en IE11, Firefox, Chrome y Opera, y es válido HTML5 (experimental) y CSS3.Lo mismo en MS Edge (2020).
fuente
fuente
Puede usar el atributo border-radius para darle un border-radius equivalente al border-radius del elemento. Por ejemplo:
(La razón para usar las extensiones -moz y -webkit es para admitir versiones pre-CSS3-final de Gecko y Webkit).
Hay más ejemplos en esta página . En cuanto a la inserción de texto, puede hacerlo, pero debe tener en cuenta el posicionamiento, ya que el modelo de relleno de cuadro de la mayoría de los navegadores todavía usa el cuadrado exterior.
fuente
Técnicamente, no existe una forma de dibujar un círculo con HTML (no hay una
<circle>
etiqueta HTML), pero se puede dibujar un círculo.La mejor manera de dibujar uno es agregar
border-radius: 50%
a una etiqueta comodiv
. He aquí un ejemplo:fuente
border-radius: 50%;
convertirá todos los elementos en un círculo, independientemente de su tamaño. Al menos, siempre que elheight
ywidth
el objetivo sean iguales, de lo contrario se convertirá en un óvalo .Nota : los prefijos del navegador ya no son necesarios para border-radius
Alternativamente, también puede usar
clip-path: circle();
para convertir un elemento en un círculo. Incluso si el elemento tiene un mayorwidth
queheight
(o al revés), seguirá siendo un círculo y no un óvalo.Nota : clip-path no es (todavía) compatible con todos los navegadores
Puede colocar texto dentro del círculo, simplemente escribiendo el texto dentro de las etiquetas del objetivo,
así:
Si desea centrar el texto en el círculo, puede hacer lo siguiente:
fuente
Puede usar la propiedad border-radius o hacer un div con alto y ancho fijos y un fondo con círculo png.
fuente
Simplemente haga lo siguiente en las etiquetas del script:
Y ahí lo tienes, tienes tu círculo.
fuente
fuente
fuente
simple y novato :)
fuente
fuente
Si está utilizando sass para escribir su CSS, puede hacer:
Qué salidas:
Pruébelo aquí: https://www.sassmeister.com/
fuente