Css
Css
Css
Modelo de caja
Son los navegadores lo que interpretan el código y luego visualizan en la pantalla la
página web.
html se podría presentar de diferentes formas la información en la pantalla. ¿Qué
hacen los navegadores? Estos actúan en base a unas reglas predefinidas donde
consideran que cada elemento html se considera que esta delimitado por un
rectángulo o caja invisibles. De ahí se habla del modelo de caja de la web.
Cada caja puede ser de tipo block “a lo ancho” o bien tipo inline “elemento dentro
de una linea”.
- Block ocupa todo el ancho del navegador haciendo el elemento siguiente se
coloque por debajo de él.
- Inline considera un elemento dentro de una línea. Si las cajas continuas son
del mismo tipo se mantienen en la misma línea.
Cada caja se coloca dentro de la pantalla, una caja debajo de otra.
Importante: Pueden ver varias cajas dentro de otra, siendo la caja interior la de
menor rango y jerarquía
Capítulo 4. Selectores
En numerosas ocasiones no queremos que todas las etiquetas de un tipo tengan el
mismo estilo, para eso sirven los selectores aplicar estilos distintos a una etiqueta o
aun parte de la web.
Estilo compacto // que todas las propiedades se escriban en una sola línea.
herencia
característica que permite definir estilos en clases padres que se van transmitiendo
hacia las subclases hijas.
Cascada:
Podemos ver lo como una cascada de
forma que el navegador va recorriendo
la cascada hasta llegar al nivel mas bajo
posible.
Elementos de rango inferior heredan
las propiedades de los elementos de
rango superior.
la mayoría de navegadores permite que el usuario modifique estilos definidos por el autor de
la página.
es recomendable no confiar en los estilos por defecto cuando crean las páginas web.
Cuando se tiene que varias reglas css le aplican estilo a la misma etiqueta de un elemento,
pues se genera conflicto o colisión de estilos. css permite darle una solución con la cascada.
cascada determina todas las reglas que son aplicadas a un elemento y que entran en
conflicto.
pues le asignan un número. siendo a la regla de estilo que tenga el mayor número.
1. Cuando más directa o próxima este la regla al elemento que está evaluando se aplica
primero y termina el proceso de cascada.
2. se ordenan en base al origen línea, interna, externa. Si la proximidad de las reglas tiene
el mismo nivel.
3. Se dividen en decl. Importantes e decl. Normales.
sí dos declaraciones son iguales y una lleva el !important y la otra no, prevalece la que
lleva !important.
!important --> hace que esa declaración prevalezca sobre otra igual que no tenga la palabra
!important.
nota--> !important solo debe usarse en casos concretos osea que resulte extremadamente
necesario, entonces se recomienda no usarlo en el código.
Cuando encontramos a mas de una regla que defina directamente a un elemento (lo cual no lo
puede resolver la cascada) se aplica la especificidad.
Notas:
- Una web bien construida debe presidir del uso de los estilos en línea.
- Debemos trabajar colocando las declaraciones generales en primer lugar y las más
específicas a continuación. facilita el análisis y la compresión del css.
- No se recomienda el uso de ¡important en el código, salvo en casos concretos.
Colores
- RGB rango 0 a 225.
También se pueden representar por porcentaje % siendo %0 a 0 y el 100% a 225.
Los valores del % deben ir separado por un punto. Ejem: 15.6%
para calcular un valor numero a un valor en %. 15*(100/225). Donde 15 es el valor
número y el resultado es el valor del %:
- código hexadecimales notación basada en códigos hexadecimales.
Sistemas de codigos se basa en el alfabeta hexadecimal de 16 simbolos. 0 1 2 3 4 5
6 7 8 9 A B C D E F.
un código en base hexadecimal se transa lada a numeración decimal utilizando
potencias. 1B0DE equivalente 1x16^4 + 11x16^3 + 0x16^2 + 13*16^1 + 14x16^0
el código se expresa usando # seguido de los 6 simbolos.
Se expresa 00 como limite inferior y 225 como limite superior.
Notación RBGA esta notación incorpora un parámetro “Alpha” que indica el grado de
transparencia que se le aplicara al color. 0.0 minina y 1.0 maxima.
- Notación HSL el sistema HSL es una rueda de colores con 3 parámetros.
El primer parámetro Angulo representa un color: en la rueda
1.1. El Angulo 0 o 360 grados representa al rojo RED, el de 120 grados al verde
GREEN y el Angulo 240 al azul BLUE.
El segundo es la saturación se presenta en porcentaje:
1.1. Representa la cantidad del color frente a sombra gris El 100% representa el
color completo, mientras que el 0% supone nada de color. Todo color sin
saturación 0% es una sombra gris.
El tercer parámetro representa el brillo y también en porcentaje:
1.1. El 0% genera el color negro y el color mas claro representa la incidencia de la
luz sobre el color. 100% que muestra un color blanco.
HSL(anguloDeGiroColor, SombraGrisSaturacion, cantidadAzulBrillo);
Notación HSLA esta notación incorpora un parámetro “Alpha” que indica el grado de
transparencia que se le aplicara al color. 0.0 minina y 1.0 maxima.
Nota: al añadir transparencia el efecto obtenido depende del color de fondo que tengamos.
Height y width son aplicable a la mayoría de los elementos, pero no a algunos como es el
<spam>.
El valor auto le indicamos al navegador que se adapte automáticamente el valor del height
para que no se salga de el.
Notaciones abreviadas básica para diferentes propiedades que usan los 4 lados de las cajas,
css su sintaxis: propiedad:top rigth bottom left;
Importante: los navegadores permiten que los valores (subpropiedades) puedan expresarse en
cualquier orden. Borde:red 16px solid;
Notas:
Validación de css con W3c Validator basta con introducir la url para que el contenido de la
pagina sea sometido a análisis y aparezca los resultados del mismo. Si la pagina cumple los
estándares de css, se ingresan los logo de validación W3c.
Las pantallas suelen tener una resolución expresada en pixeles. El tamaño real del pixel puede
variar entre dispositivo.
em en relación al tamaño del texto que se este usando. txt = 12px; pues un em=12px, 2
em =24px,.. etc. continuar pág. 130.
Margin Padding:
Nota: cuando existe superposición se debe establecer que elementos deben estar encima y
que deben quedar abajo. margin=auto;
Elemen tipo block =! width especifico, el margen que se aplica el navegador es cero.
Pero si se aplica un width definido, el navegador estable un margen tanto izq como der iguales.
Apreciándose el elemento centrado.
b-repeit define si una imagen de fondo de tamaño inferior al disponible se debe repetir.
h(repeat-x) o v(repeat-y).
b-position establece la posición de una imagen de fondo. Se usa la medida del ancho, alto
del disponible menos el ancho, alto de la imagen. b-position: 10% 10%;
display // podemos indicarle al nevegador que cierto elemento se comporte como inline o
block.
display: // establecemos el tipo de caja que el navegador usara para visualizar el elemento.
inline solo ocupan el esapcio del contenido y se van colocando de tras de otro (tienen que
ser de tipo inline tambien).
float // posicionamiento flotante. Esta porpiedad se utiliza con elementos que tengan un
ancho definido
left todos los elementos flotantes se desplazan desde la izquierda (lo rodearan por la
derecha).
right todos los elementos flotantes se desplazarán desde la derecha (lo rodearán por la
izquierda).
Clear usando la propiedad clear definimos que un elemento y los elementos posteriores
dejen de envolverse.
left hace que el parrafo deje de envolverse siempre y cuando el float=left;
both el parrafo se muestra por debajo del elemento(imagen) no importa si se flota= left,
right.
Eficiencia y Velocidad de carga: la carga de una imagen conlleva una petición al servidor, este
nos responde mostrando la pagina en el navegador. Esto consume tiempo y mas si son varias
imágenes.
Sprtite nos permite agrupar un conjunto de imágenes de diferentes tamaños para asi solo se
carge una vez.
Visibility: crea un efecto similar display:none; , pero en este caso el elemento permanece
ocupando su espacio, así este no se muestre.
Cuando una caja se encuentra dentro de otra puede ocurrir que la caja interna pueda tener
mayor dimensión que la caja que la contiene. A esto se le llama desbordamiento.
overflow: con esta propiedad le indicamos al navegador como debe actuar cuando se
produzca desbordamiento. Valores o values: visible, hidden (solo se muestra lo que está
dentro de la caja),.
tipografia
font-family sirve para indicar el tipo de fuente (letra) o los tipos de fuente que deben
usarse. esta propiedad debemos considerar ciertos aspectos:
Normalmente primero familias tipográficas y en último lugar las Familias genérica (usarse en
caso no Esten disponibles las familias tipográficas).
font-variant Pone una fuente en modo especial, ósea la letra se convierte en un tamaño
inferior de la normal o ya sea font-transform.
- small-caps se convierte en texto condensado.
Nota: para garantizar que la mayoría de navegadores debemos especificar las rutas de los
archivos fuentes de distintos formatos.
Pseudoclases para link el uso de pseudoclases para dotar de estilos a los links.
- :link estilos para link que no han sido pinchados por el usuario.
- :visited “” que han sido pinchados por el usuario.
- :focus elementos que este seleccionado por el puntero del ratón o el tabulador.
- :hover estilos a los elementos que el usuario pasa el ratón por encima de el.
- :active estilos específicos a link <a> y a botones <botton> en el momento que son
pulsados.
Outline Crea un control similar a border, con la diferencia que no ocupa espacio.
List-style-position permite controlar la posición de las viñetas. Mayor info. Pág. 233
List-style-image podemos definir una imagen en lugar de la viñeta de entre las lista.
url(ubicación_de_la_imagen). no se recomienda su uso. Mayor infor. Pag. 234.
PROPIEDAD SHORTAND LIST-STYLE otras propiedades para aplicar estilo a las listas.
En internet podemos encontrar un buen de códigos css , se recomienda usar algo que ya esta
disponible que hacerlo desde cero.
RESPONSIVE DESING
La solución para una correcta visualización de una pagina web:
Cursor css:
Podemos modificar el icono del puntero cuando el puntero del ratón se sitúa sobre una
superficie.
Nota: es habitual usarlo con la pseudoclase hover para cambiar el puntero cuando el usuario
se posicione en un lugar de la web, como también a un elemento sin usar el hover.
Filtros:
No todos los navegadores respondes igual, e incluso algunos incorporan características propias
que no se encuentran en el estándar. Es por ello que se debe realizar pruebas en distintos
browsers (como en sus diferentes versiones, claro no todas).
Por eso debes enfocarse en que la paginas web se visualicen bien en los principales browsers
(versiones modernas).
max-height
min-height
prefijos:
son un tipo de filtros que permiten que una serie de reglas css se apliquen específicamente a
un grupo de navegadores, pero no a los demás.
Con las repeticiones de las mismas reglas con diferentes prefijos o sintaxis buscamos lograr
que la visualización sea correcta.
- se deben utilizar prefijos cuando sean realmente necesario, así que solo céntrate en
escribir la estándar junto con la salvaguarda olvidando así de distintas sintaxis para
versiones anteriores.
Tarea:
Busca en alguna página web o blog de internet una técnica de filtrado
basada en prefijos para el navegador que estés utilizando. Aplícala y
explica su utilidad
Columnas:
columna-count Define numero de columnas con que se debe mostrar el contenido dentro
de un elemento.
Columna-rule:4px solid #000; determina el ancho, el estilo y el color de la línea que separa
las columnas del contenido.
Esquinas redondeadas:
Un parámetro indica el radio del círculo, mientras que 2 (radio horiz y radio vertical).
Box-shadow permite dar sombra y efectos 3D en las cajas contenedoras, cuenta con 5
parámetros:
Dist_horiz dist_vert blur spread color
Desplazamientos positivos hacia la derecha para el horizontal y hacia abajo para la vertical.
Importante: si queremos que la sombra se muestre interno, debemos usar inset antes que los
5 parámetros.
Degradado lineales es una imagen que genera css, a través de la función llamada linear-
gradient de la propiedad bg-image.
Importante: no es un fondo de pantalla, se crea una imagen que se adapta a todo el espacio
del contenedor.
Degradado radiales
transform: permite generar efectos gráficos, donde permite rotar, escalar, sesgar, trasladar
elementos.
FUNCION:
- las propiedades que vamos a cambiar durante la animación. Para ello las
determinamos con transition-property todas las que cambiaran.
transition-duration especifica cuanto tiene que ser la duración de la transición
en segundo “s”, milisegundos “ms”. Estas propiedades pueden requerir el uso de
prefijos.
Importante: los tiempos que se especifiquen por comas, se asociaran por cada propiedad
en el orden especificado transition-property.
Animaciones:
Es un efecto dinámico que cambia las propiedades de un elemento en el tiempo, pudiendo
tener varios estados intermedios. Estado inicial (form) y estado final (to).
Importante animación no tiene por qué implicar movimiento, Animación implica cambio de
propiedades. Estas propiedades pueden requerir el uso de prefijos específicos.
Si se desea aplicar más de una animación, se especifica los nombres separados por comas.
ANIMATION-FILL-MODE cómo debe comenzar y cómo debe quedar un elemento que tiene
una animación. Sus valores:
Actúan sobre el eje principal (ep): el ep correrá a largo de la fila de izquierda a derecha. Los
elementos flebox.
Actúan sobre el eje secundario (es): el es correrá desde el borde superior de la página hasta el
final (según dirección del bloque).