Selectores CSS
Selectores CSS
Selectores CSS
element,element,.. div, p Selects all <div> elements and all <p> elements
Orden en cascada
¿Qué estilo se utilizará cuando haya más de un estilo especificado para un
elemento HTML?
background-color background-color: lightblue
background-image background-image: url("paper.gif");
background-repeat background-repeat: repeat-x;O Y
background-attachment background-attachment: fixed propiedad
especifica si la imagen de fondo debe desplazarse o ser fija (no se
desplazará con el resto de la página)
background-position background-position: right top
background (propiedad de taquigrafía)
Todas las propiedades de fondo de
CSS
Property Description
opacidad 1
opacidad 0,6
opacidad 0.3
opacidad 0.1
El ancho se puede establecer como un tamaño específico (en px, pt, cm,
em, etc.) o usando uno de los tres valores predefinidos: delgado, medio o
grueso:
border-top-style:
border-right-style:
border-bottom-style:
border-left-style:
background-color:
border-radius Sets all the four border-*-radius properties for rounded corner
Con CSS, tienes control total sobre los márgenes. Existen propiedades para
establecer el margen para cada lado de un elemento (superior, derecha,
inferior e izquierda).
Margen: lados individuales
CSS tiene propiedades para especificar el margen para cada lado de un
elemento:
margin-top
margin-right
margin-bottom
margin-left
margin-top
margin-right
margin-bottom
margin-left
p {
margin: 25px 50px 75px 100px;
}
padding-top
padding-right
padding-bottom
padding-left
320px (ancho)
+ 20px (relleno izquierdo + derecho)
+ 10px (borde izquierdo + derecho)
+ 0px (margen izquierdo + derecho)
= 350px
Ejemplo
p {
direction: rtl;
unicode-bidi: bidi-override;
}
Decoración de texto
La text-decorationpropiedad se utiliza para establecer o eliminar
decoraciones del texto.
Ejemplo
a {
text-decoration: none;
}
Transformación de texto
La text-transformpropiedad se utiliza para especificar letras mayúsculas y
minúsculas en un texto.
Se puede usar para convertir todo en letras mayúsculas o minúsculas, o
poner en mayúscula la primera letra de cada palabra:
Ejemplo
p.normal {
font-weight: normal;
}
p.thick {
font-weight: bold;
}
Ejemplo
p.normal {
font-variant: normal;
}
p.small {
font-variant: small-caps;
}
Utilice siempre las etiquetas HTML adecuadas, como <h1> - <h6> para los
títulos y <p> para los párrafos.
Tamaño absoluto:
Tamano relativo:
Las fuentes de Google son de uso gratuito y tienen más de 1000 fuentes
para elegir.
<head>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?
family=Sofia">
<style>
body {
font-family: "Sofia", sans-serif;
}
</style>
</head>
Ejemplo
Agrega el efecto de fuego a la fuente "Sofia":
<head>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?
family=Sofia&effect=fire">
<style>
body {
font-family: "Sofia", sans-serif;
font-size: 30px;
}
</style>
</head>
<body>
<h1 class="font-effect-fire">Sofia on Fire</h1>
</body>
font-style
font-variant
font-weight
font-size/line-height
font-family
Ejemplo
Úselo fontpara establecer varias propiedades de fuente en una declaración:
p.a {
font: 20px Arial, sans-serif;
}
p.b {
font: italic small-caps bold 12px/30px Georgia, serif;
}
Enlaces de estilo
Los enlaces pueden ser de estilo con cualquier propiedad CSS (por
ejemplo color, font-family, background, etc.).
Ejemplo
ul.a {
list-style-type: circle;
}
ul.b {
list-style-type: square;
}
ol.c {
list-style-type: upper-roman;
}
ol.d {
list-style-type: lower-alpha;
}
o Café
o Té
o Coca Cola
Café
Té
Coca Cola
I. Café
II. Té
III. Coca Cola
a. Café
b. Té
c. Coca Cola
Establecer el ancho del elemento evitará que se estire hasta los bordes de
su contenedor.
.right {
position: absolute;
right: 0px;
width: 300px;
border: 3px solid #73AD21;
padding: 10px;
}
Ejemplo
.right {
float: right;
width: 300px;
border: 3px solid #73AD21;
padding: 10px;
}
El truco clearfix
Nota: Si un elemento es más alto que el elemento que lo contiene y está
flotando, se desbordará fuera de su contenedor. Puede utilizar el "truco
clearfix" para solucionar este problema (consulte el ejemplo a
continuación).
Ejemplo
.clearfix::after {
content: "";
clear: both;
display: table;
}
Ejemplo
.center {
padding: 70px 0;
border: 3px solid green;
text-align: center;
}
Ejemplo
.center {
line-height: 200px;
height: 200px;
border: 3px solid green;
text-align: center;
}
Ejemplo
.center {
height: 200px;
position: relative;
border: 3px solid green;
}
.center p {
margin: 0;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
Centrar verticalmente: uso de Flexbox
También puede usar flexbox para centrar las cosas. Solo tenga en cuenta
que flexbox no es compatible con IE10 y versiones anteriores:
Ejemplo
.center {
display: flex;
justify-content: center;
align-items: center;
height: 200px;
border: 3px solid green;
}
Selector de descendientes
El selector de descendientes coincide con todos los elementos que son
descendientes de un elemento especificado.
Ejemplo
div p {
background-color: yellow;
}
El siguiente ejemplo selecciona todos los elementos <p> que son hijos de
un elemento <div>:
Ejemplo
div > p {
background-color: yellow;
}
El siguiente ejemplo selecciona todos los elementos <p> que son hermanos
de los elementos <div>:
Ejemplo
div ~ p {
background-color: yellow;
}
element>element div > p Selects all <p> elements where the parent is a <div> eleme
element+element div + p Selects the first <p> element that are placed immediately
element1~element2 p ~ ul Selects every <ul> element that are preceded by a <p> ele
Sintaxis
La sintaxis de las pseudoclases:
selector:pseudo-class {
property: value;
}
Pseudoclases de anclaje
Los enlaces se pueden mostrar de diferentes formas:
Ejemplo
/* unvisited link */
a:link {
color: #FF0000;
}
/* visited link */
a:visited {
color: #00FF00;
}
/* selected link */
a:active {
color: #0000FF;
}
Ejemplo
a.highlight:hover {
color: #ff0000;
}
Ejemplo
p {
display: none;
background-color: yellow;
padding: 20px;
}
div:hover p {
display: block;
}
Ejemplo
p i:first-child {
color: blue;
}
Ejemplo
p:first-child i {
color: blue;
}
</body>
</html>
:first-of-type p:first-of-type Selects every <p> element that is the first <
parent
:last-of-type p:last-of-type Selects every <p> element that is the last <
parent
:only-of-type p:only-of-type Selects every <p> element that is the only <
parent
Sintaxis
La sintaxis de los pseudo-elementos:
selector::pseudo-element {
property: value;
}
propiedades de fuente
propiedades de color
propiedades de fondo
espaciado entre palabras
espaciado de letras
decoración de texto
alineación vertical
transformación de texto
altura de la línea
claro
Los dos puntos reemplazan la notación de dos puntos únicos para los
pseudoelementos en CSS3. Este fue un intento del W3C de distinguir
entre pseudoclases y pseudoelementos .
Ejemplo
p::first-letter {
color: #ff0000;
font-size: xx-large;
}
propiedades de fuente
propiedades de color
propiedades de fondo
propiedades de margen
propiedades de relleno
propiedades fronterizas
decoración de texto
alineación vertical (solo si "flotante" es "ninguno")
transformación de texto
altura de la línea
flotador
claro
Ejemplo
p.intro::first-letter {
color: #ff0000;
font-size: 200%;
}
Múltiples pseudo-elementos
También se pueden combinar varios pseudoelementos.
Ejemplo
p::first-letter {
color: #ff0000;
font-size: xx-large;
}
p::first-line {
color: #0000ff;
font-variant: small-caps;
}
Ejemplo
h1::after {
content: url(smiley.gif);
}
Ejemplo
::marker {
color: red;
font-size: 23px;
}
Inténtalo tú mismo "
El siguiente ejemplo hace que el texto seleccionado sea rojo sobre un fondo
amarillo:
Ejemplo
::selection {
color: red;
background: yellow;
}
Ejemplo
img {
opacity: 0.5;
}
img:hover {
opacity: 1.0;
}
Ejemplo explicado
El primer bloque CSS es similar al código del Ejemplo 1. Además, hemos
agregado lo que debería suceder cuando un usuario pasa el mouse sobre
una de las imágenes. En este caso, queremos que la imagen NO sea
transparente cuando el usuario pasa el mouse sobre ella. El CSS para esto
es opacity:1;.
Caja transparente
Cuando se usa la opacitypropiedad para agregar transparencia al fondo de
un elemento, todos sus elementos secundarios heredan la misma
transparencia. Esto puede hacer que el texto dentro de un elemento
completamente transparente sea difícil de leer: