Maison >interface Web >tutoriel CSS >Signaux extraterrestres
Ceci est une soumission pour Frontend Challenge v24.09.04, Glam Up My Markup: Space
Mais c'est aussi une soumission pour Frontend Challenge v24.09.04, CSS Art: Space.
J'ai construit une version illisible du balisage fourni qui ressemble à des signaux extraterrestres dans l'espace. C'est pourquoi il s'agit d'une double soumission — cela fonctionne également pour le CSS Art Challenge ?
Une façon amusante de ruiner n'importe quel design est d'utiliser :
* { display: contents }
Cela "supprime le parent", donc si vous l'ajoutez à tous les enfants d'un nœud, il n'y a essentiellement aucune balise, seulement du contenu brut.
Avant d'y aller, ajoutons quelques styles de base au corps :
body { aspect-ratio: 1 / 1; background: radial-gradient(circle at center, #1d2a30 40%, #0B1215 75%, #111); container-type: inline-size; display: grid; margin: 0; width: 100vw;
Nous définissons un carré (rapport d'aspect) comme grille, avec un fond radial.
Ensuite, nous définissons les éléments enfants :
:is(footer, header, section) { * { display: contents; } font-size: 3cqi; grid-area: 1 / 1; height: 25cqi; overflow: hidden; place-content: center; place-self: center; text-align: center; width: 80cqi; }
Nous utilisons la technique du "grid-stack" pour placer tous les enfants dans la même cellule-grille.
Cela nous donne :
Quel gâchis ! Maintenant, ajoutons la rotation et la couleur :
footer { rotate: 300deg; color: #FFFD; } header { color: #FFFA; } section { &:nth-of-type(1) { rotate: 60deg; color: #FFF4; } &:nth-of-type(2) { rotate: 120deg; color: #FFF9; } &:nth-of-type(3) { rotate: 180deg; color: #FFFE; } &:nth-of-type(4) { rotate: 240deg; color: #FFF7; } }
Maintenant, nous obtenons :
Presque là ! Tout ce que nous avons à faire est d'ajouter une police bizarre et une animation tremblante :
@import url('https://fonts.googleapis.com/css2? family=Redacted+Script&display=swap'); @keyframes shake { 0% { transform: skewY(-15deg); } 1% { transform: skewY(15deg); } 2% { transform: skewY(-15deg); } 3% { transform: skewY(15deg); } 4%, 100% { transform: skewY(0deg); translate: 0; } 5% { translate: -100vw -50vw; } 6% { translate: 100vw 50vw; } 7% { translate: 0; } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!