2012-01-03 34 views
22

Necesito hacer algo como esto. y quiero hacerlo por un <div></div> que tiene width en %Cómo hacer un fondo circular usando css?

enter image description here

puedo hacer esto mediante el uso de una imagen y la adición de otro div dentro y z-index.

Pero quiero saber si es posible hacer en este círculo en el fondo con css.

Respuesta

13

Se puede hacer utilizando la propiedad border-radius. básicamente, necesita establecer el radio del borde exactamente a la mitad de la altura y el ancho para obtener un círculo.

JSFiddle

HTML

<div id="container"> 
    <div id="inner"> 
    </div> 
</div> 

CSS

#container 
{ 
    height:400px; 
    width:400px; 
    border:1px black solid; 
} 

#inner 
{ 
    height:200px; 
    width:200px; 
    background:black; 
    -moz-border-radius: 100px; 
    -webkit-border-radius: 100px; 
    border-radius: 100px; 
    margin-left:25%; 
    margin-top:25%; 
} 
+0

+1 Gracias pero yo estoy pidiendo para lograr esto usando un único 'div' si es posible –

+0

pero si eso no es posible en la solución que tendrá que utilizar z-index porque Necesito agregar texto e imágenes superpuestos al círculo. –

+2

Diría que es una solución bastante inteligente, @xbonez. –

3

Puede utilizar los :before y :after pseudo-clases para poner un fondo de varias capas sobre un elemento.

#divID : before { 
    background: url(someImage); 
} 

#div : after { 
    background : url(someotherImage) -10% no-repeat; 
} 
1

Here es una solución para hacerlo con un solo elemento div con propiedades CSS, border-radius hace la magia.

CSS:

.circle{ 
    width:100px; 
    height:100px; 
    border-radius:50px; 
    font-size:20px; 
    color:#fff; 
    line-height:100px; 
    text-align:center; 
    background:#000 
} 

HTML:

<div class="circle">Hello</div> 
24

Comprobar la siguiente CSS. Demo

.circle { 
    width: 140px; 
    height: 140px; 
    background: red; 
    -moz-border-radius: 70px; 
    -webkit-border-radius: 70px; 
    border-radius: 70px; 
} 

Para más formas puede seguir siguientes direcciones:

http://davidwalsh.name/css-triangles

+2

css3shapes.com redirecciona al sitio web espumoso – jokkedk

32

que sea sencillo:

.circle 
    { 
    border-radius: 50%; 
    width: 200px; 
    height: 200px; 
    } 

anchura y la altura puede ser cualquier cosa, como siempre y cuando sean iguales

5

Degradados?

div { 
    width: 400px; height: 400px; 
    background: radial-gradient(ellipse at center, #f73134 0%,#ff0000 47%,#ff0000 47%,#23bc2b 47%,#23bc2b 48%); 
} 

https://fiddle.jshell.net/su5oyd4L/

Cuestiones relacionadas