Diferencia entre revisiones de «CSS»
Contenido eliminado Contenido añadido
m Revertida una edición de 200.68.140.51 (disc.) a la última edición de SeroBOT Etiquetas: Reversión Enlaces a desambiguaciones |
|||
(No se muestran 24 ediciones intermedias de 17 usuarios) | |||
Línea 10:
-->[https://www.w3.org/TR/CSS22/ Level 2 Revisión 2 (CSS 2.2)]
|abierto = Sí
|captura=Ejemplo_de_código_CSS.jpg|caption=Ejemplo de código fuente escrito en CSS.|extensión=.css|contenedor_para=Reglas de estilo para [[Elemento HTML|elementos HTML]] (etiquetas)|contenido_por=[[HTML|Documentos HTML]]|nombre=Hojas de estilo en cascada (CSS)|uniform_type=public.css|mime=text/css|lanzamiento=17 de diciembre de 1996 (27 años)|desarrollador=[[World Wide Web Consortium]] (W3C)}}
'''CSS''' (siglas en inglés de '''C'''ascading '''S'''tyle '''S'''heets), en español «Hojas de estilo en cascada», es un lenguaje de [[diseño gráfico]] para definir y crear la presentación de un documento estructurado escrito en un [[lenguaje de marcado]].<ref>{{Cita web|url=https://developer.mozilla.org/en-US/docs/Web/Guide/CSS|título=CSS developer guide|fechaacceso=21 de octubre de 2016|obra=Mozilla Developer Network}}</ref> Es muy usado para establecer el diseño visual de los documentos web, e interfaces de usuario escritas en [[HTML]] o [[XHTML]]; el lenguaje puede ser aplicado a cualquier [[Extensible Markup Language|documento XML]], incluyendo XHTML, [[Scalable Vector Graphics|SVG]], [[XML-based User-interface Language|XUL]], [[RSS]], etcétera.
Junto con [[HTML]] y [[JavaScript]], CSS es una [[tecnología]] usada por muchos [[sitio web|sitios web]] para crear páginas visualmente atractivas, [[interfaces]] de usuario para [[aplicación web|aplicaciones web]] y [[GUI]]s para muchas aplicaciones [[smartphone|móviles]] (como [[Firefox]] OS).<ref>{{Cita web|url=http://www.htmlgoodies.com/beyond/article.php/3893911/Web-based-Mobile-Apps-of-the-Future-Using-HTML-5-CSS-and-JavaScript.htm|título=Web-based Mobile Apps of the Future Using HTML 5, CSS and JavaScript|fechaacceso=21 de octubre de 2016|sitioweb=www.htmlgoodies.com}}</ref>
La separación del formato y el contenido hace posible presentar el mismo documento marcado en diferentes estilos para diferentes métodos de renderizado, como en pantalla, en impresión, en voz (mediante un navegador de voz o un lector de pantalla), y dispositivos táctiles basados en el [[Braille (lectura)|sistema Braille]]. También se puede mostrar una página web de manera diferente dependiendo del tamaño de la pantalla o tipo de dispositivo. Los lectores pueden especificar una hoja de estilos diferente, como una hoja de estilos CSS guardado en su computadora, para sobreescribir la hoja de estilos del diseñador.
Línea 36:
Las clases y los identificadores son sensibles a las mayúsculas, comienzan con letras, y pueden incluir caracteres alfanuméricos y guiones bajos. Una clase se aplica a cualquier número de elementos. Un identificador se aplica a un solo elemento.
Las '''pseudoclases''' son usadas en los selectores CSS para permitir el formateo usando información que no está incluida en el documento. Un ejemplo de una pseudoclase muy usada es <code>:hover</code>, que identifica el contenido que está siendo apuntado por un puntero, como el cursor del ratón. Este nombre se añade al selector, de esta manera: <code>a:hover</code> o <code>#elementid:hover</code>. Una pseudoclase clasifica elementos, como <code>:link</code> o <code>:visited</code>, mientras que un pseudoelemento hace una selección de elementos parciales, como <code>::first-line</code> o <code>::first-letter</code>.
Los selectores pueden ser combinados de muchas maneras para obtener una mayor flexibilidad y precisión. Múltiples selectores pueden ser unidos en una misma línea para especificar elementos por su ubicación, tipo de elemento, identificador, clase, o cualquier combinación de estos. El orden de los selectores es importante. Por ejemplo, <code>div.myClass {color: red;}</code> aplica a todos los elementos <code><div></code> con la clase myClass, mientras que<code>.myClass div {color: red;}</code> aplica a todos los elementos <code><div></code> que estén dentro de cualquier elemento con la clase myClass.
Línea 47:
|<code>E </code> || un elemento de tipo E || 1
|-
|<code>E:link</code> || un elemento E que es un enlace que no ha sido visitado (:link) o ya fue visitado (:visited)
|-
|<code>E:active</code> || un elemento E que está realizando cierta acción por parte del usuario || 1
Línea 131:
Las propiedades son insertadas en el estándar CSS. Cada propiedad tiene un conjunto de posibles valores. Algunas propiedades afectan a cualquier elemento, otras solo a un grupo particular de elementos.
Los valores pueden ser palabras clave, como "center" o "inherit", o valores numéricos, como 200px (200 píxeles) o 80% (80 por ciento del ancho de la ventana).
Los valores de colores son especificados por medio de una palabra clave (ej. "red"),
=== Uso ===
Línea 157:
Los estilos CSS puede ser provistos desde varias fuentes. Esas fuentes pueden ser el navegador web, el usuario y el diseñador. La información del diseñador puede ser clasificada de las siguientes formas: inline, media type, importancia, especificidad del selector, orden de reglas, herencia y definición de propiedades. La información de los estilos CSS puede estar en un documento separado o puede estar embebido dentro de un documento HTML. Múltiples hojas de estilos pueden ser importadas al mismo tiempo. Los diferentes estilos pueden ser aplicados dependiendo de la salida del dispositivo usado en ese momento; por ejemplo, la versión para monitores puede ser diferente de la versión impresa, así que los diseñadores pueden aplicar diferentes estilos dependiendo del dispositivo usado.
La hoja de estilos con la máxima prioridad controla la visualización del contenido. Las declaraciones no establecidas en la fuente con máxima prioridad son
Una de las metas de CSS es permitir a los usuarios un mayor control sobre la presentación. Algunas personas que encuentran a los encabezados rojos en itálicas difíciles de leer pueden aplicar una hoja de estilos diferente. Dependiendo del navegador y del sitio web, un usuario puede escoger entre varias hojas de estilo provistas por los diseñadores, o pueden remover todas las hojas de estilos añadidas y ver el sitio usando los estilos por defecto del navegador, o pueden
{| class="wikitable"
Línea 224:
</html>
</syntaxhighlight>
En este ejemplo, la declaración en el atributo <code>style</code>
=== Herencia ===
La herencia es una característica clave en CSS; basada en la relación ancestro-descendiente para operar. La herencia es el mecanismo por el cual las propiedades no solo se aplican a un solo elemento, sino también a sus descendientes. La herencia se basa en el árbol del documento, el cual es la jerarquía de los elementos XHTML en una página basada en el anidamiento. Los elementos descendientes pueden heredar los valores de las propiedades CSS de un elemento ancestro. En general, los elementos descendientes heredan las propiedades relacionadas al texto, pero las propiedades relacionadas con la caja no. Las propiedades que pueden ser heredadas son el color, fuente, espaciado, el peso de la línea, propiedades de lista, alineación del texto, identado,
La herencia previene que algunas propiedades sean declaradas una y otra vez en la hoja de estilos, permitiendo a los diseñadores escribir menos código CSS. Mejora la carga rápida de los sitios por los usuarios, y permite a los clientes ahorrar dinero en los costos de desarrollo y ancho de banda.
Línea 250:
}
</syntaxhighlight>
=== Espacios en blanco ===
Los espacios en blanco entre propiedades y selectores se ignoran. Este pedazo de código:
Línea 290 ⟶ 291:
: Los elementos ''float'' flotan a la derecha y los otros elementos fluyen a la izquierda de este elemento.
; clear
: Fuerza al elemento a no fluir alrededor de los elementos que flotan a la izquierda
== Historia ==
Línea 297 ⟶ 298:
CSS fue propuesto por primera vez por [[Håkon Wium Lie]] el 10 de octubre de 1994.<ref name=chss-proposal>{{cita publicación|apellido=Lie|nombre=Hakon W|título=Cascading HTML style sheets - a proposal|fecha=10 de octubre de 1994|url=http://www.w3.org/People/howcome/p/cascade.html|fechaacceso=25 de mayo de 2014|editorial=CERN}}</ref> Al mismo tiempo, Lie trabajaba con [[Tim Berners-Lee]] en el [[CERN]].<ref name="chapter20">{{cita libro|título=Cascading Style Sheets, designing for the Web|año=1999|editorial=Addison Wesley|isbn=0-201-59625-3|url=https://archive.org/details/cascadingstyles000lieh|fechaacceso=23 de junio de 2010|enlaceautor1=Håkon Wium Lie|nombre1=Håkon Wium|apellido=Lie|enlaceautor2=Bert Bos|nombre2=Bert|apellido2=Bos}}</ref> Muchos otros lenguajes de hojas de estilos fueron propuestos al mismo tiempo, y las discusiones en las listas de correo públicas dentro del [[World Wide Web Consortium|W3C]] dieron lugar a la primera Recomendación CSS por el W3C (CSS1)<ref name=w3c-css1>{{cite web|título=Cascading Style Sheets, level 1|url=http://www.w3.org/TR/1999/REC-CSS1-19990111|editorial=World Wide Web Consortium}}</ref> en 1996. En particular, la propuesta de [[Bert Bos]] fue influyente; él fue el coautor de CSS1 y es reconocido como el cocreador de CSS.<ref name="WWW3">{{cita web|título=Simple style sheets for SGML & HTML on the web |url=http://www.w3.org/People/Bos/style.html|editorial=World Wide Web Consortium|fechaacceso=20 de junio de 2010|enlaceautor=Bert Bos|nombre=Bert|apellido=Bos|fecha=14 de abril de 1995}}</ref>
Las hojas de estilo han existido de una forma u otra desde los comienzos del Standard Generalized Markup Language ([[SGML]]) en la década de los
A medida que [[HTML]] fue creciendo, llegó a abarcar una amplia variedad de capacidades de diseño para satisfacer las demandas de los diseñadores web. Esta evolución dio al diseñador mayor control sobre la apariencia del sitio, con el costo de un HTML más complejo. Variaciones en las implementaciones de los navegadores web, como [[ViolaWWW]] y [[WorldWideWeb]],<ref name="IEEE">{{cita web|apellido1=Petrie|nombre1=Charles|título=Interview Robert Cailliau on the WWW Proposal: "How It Really Happened."|url=http://www.computer.org/portal/web/computingnow/ic-cailliau|editorial=[[Institute of Electrical and Electronics Engineers]]|fechaacceso=18 de agosto de 2010|enlaceautor2=Robert Cailliau|nombre2=Robert|apellido2=Cailliau|fecha=November 1997|urlarchivo=https://web.archive.org/web/20110106041256/http://www.computer.org/portal/web/computingnow/ic-cailliau|fechaarchivo=6 de enero de 2011}}</ref> hicieron más difícil la consistencia de la apariencia del sitio web, y los usuarios tenían menos control sobre cómo era mostrado el contenido web. El navegador/editor creado por [[Tim Berners-Lee]] tenía hojas de estilos que fueron introducidas dentro del programa. Las hojas de estilos, por lo tanto, no eran enlazadas a los documentos en la web.<ref name=cssdftw>{{cita libro|apellido=Bos|nombre=Håkon Wium Lie, Bert|título=Cascading style sheets: designing for the Web|fecha=1999|editorial=Addison-Wesley|lugar=Harlow, Essex, England|isbn=0-201-59625-3|edición=2nd|url=https://archive.org/details/cascadingstyles000lieh}}</ref> [[Robert Cailliau]], también del CERN, quería separar la estructura de la presentación, de modo que diferentes hojas de estilo podrían describir diferentes presentaciones para impresión, pantallas y editores.<ref name="IEEE" />
Mejorar las capacidades de la presentación en la web fue un tema de interés para muchos en las comunidades web, y 9 diferentes lenguajes de hojas de estilos fueron propuestos en la lista de correo www-style.<ref name=css-phd/> De esas nueve propuestas, dos influenciaron profundamente en lo que sería CSS: Cascading HTML Style Sheets<ref name=chss-proposal /> y Stream-based Style Sheet Proposal (SSP).<ref name="WWW3"/><ref name=ssp>{{cita web|título=Stream-based Style sheet Proposal|url=http://www.w3.org/People/Bos/stylesheets.html|fechaacceso=3 de septiembre de 2014|enlaceautor=Bert Bos|nombre=Bert|apellido=Bos|fecha=31 de marzo de 1995}}</ref> Dos navegadores fueron usados para pruebas para las propuestas iniciales; Lie trabajó con [[Yves Lafon]] para implementar CSS en el navegador [[Arena (navegador)|Arena]] creado por [[Dave Raggett]].<ref>{{cita web|título=Libwww Hackers|url=http://www.w3.org/Library/Collaborators.html|editorial=World Wide Web Consortium|fechaacceso=6 de junio de 2010|enlaceautor=Henrik Frystyk Nielsen|nombre=Henrik Frystyk|apellido=Nielsen|fecha=7 de junio de 2002}}</ref><ref>{{cita web|url=http://www.w3.org/People/Lafon/|título=Yves Lafon|fechaacceso=17 de junio de 2010|editorial=World Wide Web Consortium}}</ref><ref>{{cita web|url=http://www.w3.org/People/domain?domain=Technology+and+Society|título=The W3C Team: Technology and Society|editorial=World Wide Web Consortium|fechaacceso=22 de enero de 2011|fecha=18 de julio de 2008}}</ref> [[Bert Bos]] implementó su propia propuesta SSP en el navegador [[Argo (navegador web)|Argo]].<ref name="WWW3"/>
La propuesta de Lie fue presentada en la conferencia "[[Mosaic and the Web]]" (más tarde llamada WWW2) en [[Chicago]], [[Illinois]] en 1994, y de nuevo con Bert Bos en 1995.<ref name="chapter20" /> En ese tiempo el W3C ya estaba siendo establecido, y mostraba interés en el desarrollo de CSS. Organizó un taller para ese fin presidido por [[Steven Pemberton]]. Esto resultó en que W3C le dio más trabajo sobre CSS a lo resultados del Comité de Revisión Editorial (ERB). Lie y Bos eran el equipo técnico principal en esta parte del proyecto, con participantes adicionales como [[Thomas Reardon]] de [[Microsoft]]. En agosto de 1996 [[Netscape Communications Corporation|Netscape Communication Corporation]] presentó una alternativa de lenguaje de hoja de estilos llamada [[JavaScript Style Sheets]] (JSSS).<ref name="chapter20" /> La especificación nunca fue finalizada y quedó obsoleta.<ref>{{cita web|título=JavaScript-Based Style Sheets|url=http://www.w3.org/Submission/1996/1/WD-jsss-960822|editorial=[[World Wide Web Consortium]]|fechaacceso=23 de junio de 2010|autor=[[Lou Montulli]] |autor2=[[Brendan Eich]] |autor3=[[Scott Furman]] |autor4=[[Donna Converse]] |autor5=[[Troy Chevalier]]|fecha=22 de agosto de 1996}}</ref> A finales de 1996, CSS estaba listo para ser oficial, y la recomendación CSS 1 fue publicada en diciembre.
Línea 309 ⟶ 310:
El grupo de trabajo de CSS comenzó corrigiendo errores que no habían sido revisados en el CSS 1, resultando en la creación de CSS 2, el 4 de noviembre de 1997. Fue publicado como una recomendación el 12 de mayo de 1998. Las adiciones a CSS de allí en adelante, conocidas colectivamente como "CSS3", tomaron un aspecto modular, desarrollándose cada función de forma independiente.
En 2005 el grupo de trabajo de CSS decidió mejorar los
== Niveles ==
Línea 333 ⟶ 334:
Como ampliación de CSS1, se ofrecieron, entre otras:
* Las funcionalidades propias de las capas (<
* El concepto de "''media types''".
* Soporte para las hojas de estilo auditivas.
Línea 366 ⟶ 367:
== Soporte por los navegadores web ==
Cada navegador web
Además de las
Como los sitios web adoptan nuevas normas del código que son incompatibles con los navegadores más antiguos, a estos navegadores se les
== Limitaciones ==
Línea 417 ⟶ 418:
: Sin CSS, los diseñadores web típicamente diseñaban sus páginas con elementos como tablas que dificultaban la accesibilidad para otros usuarios, y que iban en perjuicio de ciertos usos de los documentos, por parte de navegadores orientados a personas con algunas limitaciones sensoriales.
==
{{AP|Framework de CSS}}
Los ''frameworks'' de CSS son bibliotecas preparadas para
== Véase también ==
Línea 448 ⟶ 450:
| idioma = inglés
| fechaacceso = 23 de julio de 2014 }} – Incluye enlaces a las especificaciones.
* [[
* [https://web.archive.org/web/20160310025511/http://www.w3schools.com/Css/css3_intro.asp] CSS3 Introduction
|