Estilizar un dialog y su backdrop en CSS
El backdrop es un pseudoelemento, y el dialog vive en la capa superior, encima de todo.
dialog {
inset: 0;
margin: auto;
max-inline-size: min(32rem, 90vw);
padding: 1.5rem;
border: 0;
border-radius: 0.75rem;
box-shadow: 0 20px 60px rgb(15 23 42 / 0.25);
}
dialog::backdrop {
background: rgb(15 23 42 / 0.45);
backdrop-filter: blur(2px);
}
body:has(dialog[open]) { overflow: hidden; }
Cómo funciona
::backdropestiliza la capa que el navegador pinta detrás de un modal.- Un dialog cerrado es
display: none: anímalo conallow-discrete. inset: 0másmargin: autocentra un dialog de cualquier tamaño.
Palabras clave y builtins usados aquí
backgroundblurborderinsetmarginoverflowpaddingpxremrgbvw
El intento, en números
- Líneas
- 16
- Caracteres a escribir
- 297
- Tokens
- 91
- Ritmo de tres estrellas
- 85 tpm
Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 64 segundos.
Paso 3 de 4 en Superficies; paso 5 de 13 en Dar estilo a componentes.