Bordes Redondeados con CSS

  • 22/10/2008
  • 12:12 am
  • unijimpe

La implementación de bordes redondeados en HTML normalmente se hacer utilizando imágenes de fondo o con otras técnicas que por lo general son engorrosas, esta vez les presentamos una técnica muy sencilla con la que podemos crear elementos con esquinas redondeadas de manera sencilla.

Como lo hacemos

Para crear bordes redondeados con CSS en Firefox, podemos utilizar la propiedad -moz-border-radius y si utilizamos Safari se puede utilizar la propiedad -webkit-border-radius, pero para Internet Explorer no hay posibilidad de hacerlo nativamente.

Entonces para ello haremos uso de un hack que fue publicado en Curved corner (border-radius) cross browser, este hack se ha preparado en un archivo border-radius.htc. Entonces luego de descargar el archivo, para aplicar los bordes redondeados creamos un estilo de la forma:

  1. .curved {
  2.     -moz-border-radius: 10px;
  3.     -webkit-border-radius: 10px;
  4.     behavior:url(border-radius.htc);
  5. }

Luego podemos aplicar este estilo a cualquier div que nosotros deseamos, como se muestra a continuación:

  1. <div id="alert" class="curved">Curved Corner</div>

Con esto logramos obtener las esquinas redondeadas que se verán correctamente en todos los navegadores y con unas pocas líneas.

Observaciones
He probado este hack y por defecto le pone un borde al div que elegimos, para eliminar este efecto es necesario agregar un borde con el mismo color de fondo del elemento. Además de ello por defecto hace que el div al que se aplica los bordes redondeados se muestre centrado, para evitar ello agregamos un par de líneas a nuestro CSS (float y clear).

  1. #alert {
  2.     width: 250px;
  3.     background-color: #A0C7F1;
  4.     border: #A0C7F1 solid 1px;
  5.     clear: both;
  6.     float: left;
  7. }

El código anterior crea un elemento de de 250 pixels de ancho con color de fondo y borde iguales. Este ejemplo lo podemos ver funcionando en Esquinas Redondeadas.

Posts Relacionados

Total de Comentarios: 18

Publicidad
22/10/2008
11:07 am

Esta bastante interesante , pero
no me funciona en el IE,, me da el siguiente error

Line: 0
Character: 0
Code: 0
Error Message: Access is denied to: file:///C:/Users/user/Desktop/ppppp/border-radius.htc
URL: file:///C:/Users/user/Desktop/ppppp/prueba.html

22/10/2008
11:13 am

bueno quien sabe que era>>
ya funciona perfectamente,,
excelente gracias

Jhonattan Guillen
22/10/2008
12:45 pm

Que bueno tips este.. la verdad q es mucho mas facil que en vez de estar editando varias imagines para lograr este efecto..!

22/10/2008
3:40 pm

Hi,
this hack work properly only DIV…

For example I have:

<ol%gt;
<li class=”curved”%gt;…</li%gt;

</ol%gt;

In this case doesn’t work properly :(

23/10/2008
1:30 pm

No sé por qué pero en IE no me funciona (estoy aplicando divs, y en tu ejemplo si funciona y tengo exactamente el mismo código).

Derleth
23/10/2008
1:42 pm

en opera no se ven las esquinas redondas O.o

23/10/2008
9:03 pm

[...] Bordes Redondeados con CSS » unijimpe Lindo hack para bordes redondeados, compatible con IE6 (tags: hack howto css rounded roundedcorners) [...]

25/10/2008
6:26 pm

Mas de lo mismo, en IE no me funciona pero vamos, tampoco me importa xD que se pasen a Firefox si quieren ver la web mas bonita, jaja

Randall Castillo
27/10/2008
4:48 pm

es un exelente truco pero con IE hasta el 6 para mi es un dolor de cabeza usare siempre fire fox gracias por el aporte

06/11/2008
7:08 pm

Asi es…en Opera no funciona…porque es un navegador standard…nada de -firefox-gimme-some-border o cosas raras y especificas :p

Susana
07/11/2008
7:36 pm

Gracias por el aporte, lo probé tanto en Firefox como en IE6 y funciona. En Opera desgraciadamente no.
Veo en los comentarios que hay problemas con el IE6, creo que el problema puede ser una cuestión de ruta. Para probar se podría colocar todos los archivos dentro de una misma carpeta (con el código tal cual al que está arriba) y no debería haber problema. Por otro lado, si tienen el css dentro de una carpeta (por ejemplo llamada CSS)y el archivo que contiene el div con los bordes redondeados se encuentra al mismo nivel que la carpeta, al código habría que agregarle lo sgte.: behavior:url(css/border-radius.htc);
Espero sea de ayuda :-)

17/11/2008
6:15 am

[...] unijumpe.net – Bordes redondeados con CSS [...]

jesus
25/11/2008
2:10 pm

que tal,
no me funciona para div´s queestan dentro de un div, es decir del div wrapper.. como hago??

Luis
15/12/2008
2:12 pm

Lo he probado con divs estáticos y trabaja bien, pero cuando le cambias el tamaño al div haciendo uso del DOM, no trabaja bien

09/01/2009
11:52 pm

[...] no es necesario mucho código para llevarlo a cabo, y en el mismo sitio se puede bajar el fichero. (Acá la misma forma, pero con una pequeña modificación y en [...]

03/06/2009
12:21 pm

Joder, y yo matandome con imagenes de fondo xDDD

Muchas gracias :P

04/06/2009
12:13 pm

Oye veo que en opera y I Exploter no funciona… es normal? con firefox y chrome me va perfecto

Enviar Comentario

(*)

(*)