Tutorial CSS

CSS INICIO Introducción a CSS Sintaxis CSS Selectores de CSS CSS Cómo Comentarios CSS Colores CSS Fondos CSS Bordes CSS Márgenes CSS Relleno CSS Altura/ancho de CSS Modelo de caja CSS Esquema CSS Texto CSS Fuentes CSS Iconos CSS Enlaces CSS Listas CSS Tablas CSS Pantalla CSS Ancho máximo de CSS Posición de CSS Índice Z de CSS Desbordamiento de CSS CSS flotante Bloque en línea CSS Alinear CSS Combinadores de CSS Pseudo-clase CSS Pseudoelemento CSS Opacidad CSS Barra de navegación CSS Menús desplegables de CSS Galería de imágenes CSS Sprites de imagen CSS Selectores de atributos CSS Formularios CSS Contadores CSS Diseño del sitio web CSS Unidades CSS Especificidad CSS CSS !importante Funciones matemáticas CSS

CSS Avanzado

Esquinas redondeadas CSS Imágenes de borde CSS Fondos CSS Colores CSS Palabras clave de color CSS Gradientes CSS Sombras CSS Efectos de texto CSS Fuentes web CSS Transformaciones CSS 2D Transformaciones CSS 3D Transiciones CSS Animaciones CSS Información sobre herramientas de CSS Imágenes de estilo CSS Reflejo de imagen CSS Ajuste de objeto CSS Posición del objeto CSS Enmascaramiento CSS Botones CSS Paginación CSS Columnas múltiples de CSS Interfaz de usuario de CSS Variables CSS Tamaño del cuadro CSS Consultas de medios CSS Ejemplos de CSS MQ Caja flexible de CSS

Responsivo CSS

Introducción a la tracción trasera Vista de RWD Vista de cuadrícula RWD Consultas de medios RWD Imágenes de RWD Vídeos de RWD Marcos RWD Plantillas RWD

Cuadrícula CSS

Introducción a la cuadrícula Contenedor de rejilla Elemento de cuadrícula

CSS SASS

Tutorial de SASS

Ejemplos de CSS

Plantillas CSS Ejemplos de CSS prueba css Ejercicios CSS Certificado CSS

Referencias CSS

Referencia CSS Selectores de CSS Funciones CSS CSS Referencia Aural Fuentes web seguras CSS CSS Animable Unidades CSS Convertidor CSS PX-EM Colores CSS Valores de color CSS Valores predeterminados de CSS Compatibilidad con navegador CSS

Tamaño del cuadro CSS


Tamaño del cuadro CSS

La propiedad CSS box-sizingnos permite incluir el relleno y el borde en el ancho y alto total de un elemento.


Sin la propiedad de tamaño de caja CSS

De forma predeterminada, el ancho y la altura de un elemento se calculan así:

ancho + relleno + borde = ancho real de un elemento
alto + relleno + borde = altura real de un elemento

Esto significa: cuando establece el ancho/alto de un elemento, el elemento a menudo parece más grande de lo que ha establecido (porque el borde y el relleno del elemento se agregan al ancho/alto especificado del elemento).

La siguiente ilustración muestra dos elementos <div> con el mismo ancho y alto especificados:

Este div es más pequeño (el ancho es de 300 px y la altura es de 100 px).

Este div es más grande (el ancho también es de 300 px y la altura es de 100 px).

Los dos elementos <div> anteriores terminan con diferentes tamaños en el resultado (porque div2 tiene un relleno especificado):

Ejemplo

.div1 {
  width: 300px;
  height: 100px;
  border: 1px solid blue;
}

.div2 {
  width: 300px;
  height: 100px;
  padding: 50px;
  border: 1px solid red;
}

La box-sizingpropiedad resuelve este problema.



Con la propiedad CSS box-sizing

La box-sizingpropiedad nos permite incluir el relleno y el borde en el ancho y alto total de un elemento.

Si establece box-sizing: border-box;en un elemento, el relleno y el borde se incluyen en el ancho y la altura:

¡Ambos divs son del mismo tamaño ahora!

¡Hurra!

Aquí está el mismo ejemplo que el anterior, con box-sizing: border-box; agregado a ambos elementos <div>:

Ejemplo

.div1 {
  width: 300px;
  height: 100px;
  border: 1px solid blue;
  box-sizing: border-box;
}

.div2 {
  width: 300px;
  height: 100px;
  padding: 50px;
  border: 1px solid red;
  box-sizing: border-box;
}

Dado que el resultado de usar el box-sizing: border-box;es mucho mejor, muchos desarrolladores quieren que todos los elementos de sus páginas funcionen de esta manera.

El siguiente código garantiza que todos los elementos tengan el tamaño de esta forma más intuitiva. Muchos navegadores ya usan box-sizing: border-box;muchos elementos de formulario (pero no todos, por lo que las entradas y las áreas de texto se ven diferentes en el ancho: 100%;).

Aplicar esto a todos los elementos es seguro y sabio:

Ejemplo

* {
  box-sizing: border-box;
}

Propiedad de tamaño de cuadro CSS

Property Description
box-sizing Defines how the width and height of an element are calculated: should they include padding and borders, or not