saltar al contenido. saltar al menu
La versión actual de CSS solo nos permite tener esquinas cuadradas y aburridas. Las especificaciones de CSS3 tienen contempladas las esquinas redondeadas, pero mientras tanto ¿cómo lograrlas con CSS? Aquí van varias técnicas que pueden ser útiles.
En las especificaciones de CSS3 para los bordes, está la propiedad border-radius, en la que se puede definir el radio del "redondeo" de las esquinas individualmente
Usa solamente css, no requiere imágenes, scripts, o marcaje extra. Permite definir radios diferentes para cada esquina
Aun no está finalizado, pasará mucho tiempo antes de que todos los navegadores lo adopten
Los navegadores gecko (mozilla, firefox, camino), soportan la propiedad moz-border-radius. La última versión de Safari soporta -border-radius.
En esta técnica, se usa content:, :before y :after para introducir imágenes para crear las esquinas
A pesar de que usa imágenes, todo se controla a través de CSS. No se necesita ningún html extra.
Algunos navegadores, notablemente Internet Explorer, no soportan los selectores :before y :after o la propiedad content:. Se deben de hacer 4 imagenes para cada color de esquina
Krazy Korners utiliza varios elementos <b>, de 1x1 pixel y con un color de fondo, para crear las esquinas. Snazzy Borders usa el mismo principio, pero permite poner bordes al contenedor.
Todo se controla a través de CSS. No hay que hacer imagenes.
El código muchas veces es más grande que lo que serían las imagenes. Introduce elementos innecesarios en el código
Existen varias opciones para redondear esquinas usando javascript:
Generalmente no requieren marcaje extra. Suelen ser compatibles en la mayoría de los navegadores sin hacks.
Requieren que el usuario tenga habilitado js (aunque todas son no-obtrusivas). Mezclan la presentación con el comportamiento.
Para esta técnica se usan 4 imágenes (una para cada esquina) posicionadas en las 4 esquinas del contenedor.
Es la técnica más sencilla de entender. No requiere muchas complicaciones.
Introduce elementos de presentación en el código. Se necesita cambiar el html para cambiar el aspecto.
La solución más completa, más flexible y menos intrusiva, tiene mil y un variantes, pero el principio es usar imagenes de fondo en varios elementos para crear las esquinas.
Controlas la presentación desde CSS, sin introducir elementos img. Es flexible y no requiere de scripts.
Las técnicas suelen usar marcaje (html) extra, aunque muchas técnicas se pueden adaptar para usar el marcaje que ya tienes. Tienes que generar una images (o varias) para cada estilo/color que necesites
¿Cuál es la mejor técnica? Como siempre la respuesta es "depende". Depende del soporte que quieras dar a navegadores, los efectos que quieras lograr.
Personalmente, la técnica de esquinas y bordes de 456beres atreet me parece la más sencilla, flexible y limpia.
Suscríbete a la lista de correo y mantente informado sobre las actualizaciones del sitio.
ATOM
RSS
RSS noticias
RSS articulos
RSS tutoriales
¿Quieres compartir una noticia o enlace? ¿Sugerir un tema para un artículo? Hazlo aquí:
Kemie ha usado esquinas redondeadas en 62.5% de sus diseños en el ultimo año.
1 mayo 2006, 20:53
Webtaller
buen sitio
21 febrero 2007, 15:38
Ahoraescuando
Muy buen artículo, si bien existen otras formas más, creo que resume las más importantes.
Felicidades y sigue adelante con tan buenos artículos.
Saludos.