Maison >interface Web >tutoriel CSS >Signaux extraterrestres

Signaux extraterrestres

WBOY
WBOYoriginal
2024-09-12 16:18:291288parcourir

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.

Ce que j'ai construit

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 ?

Voyage

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 :

Alien Signals

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 :

Alien Signals

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; }
}

Démo

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Signaux extraterrestresArticle suivant:Signaux extraterrestres