recherche
Maisoninterface Webtutoriel CSSCSS n'est pas difficile (il vous manque juste ces bases) - Maîtriser les bases (Partie 2)

Merci à tous pour vos commentaires sur le dernier article, cela signifie vraiment beaucoup. J'espère que vous apprendrez une ou deux choses de cet article.

Dans cet article, nous explorerons deux concepts fondamentaux en CSS : le positionnement et la mise en page. Le positionnement et la mise en page sont au cœur de la création de pages Web visuellement attrayantes et fonctionnelles. La maîtrise de ces concepts vous permet de créer des conceptions réactives qui améliorent l'expérience utilisateur. À la fin, vous saurez comment utiliser ces techniques pour structurer vos pages Web comme un pro.

- Positionnement et mise en page

Le positionnement CSS contrôle la façon dont les éléments sont positionnés ou placés sur une page Web. Le positionnement est influencé par les valeurs de décalage Haut, Bas, Gauche et Droite, le cas échéant. Il existe 5 valeurs CSS Position principales ;

1. Statique : Tous les éléments HTML sont positionnés statiquement par défaut. Cela signifie simplement que l'élément est inchangé, ne bouge pas et n'est pas influencé par les valeurs de décalage Haut, Bas, Gauche et Droite.

2. Relatif : Les éléments sont positionnés par rapport à leur position normale.

3. Absolu : Les éléments sont positionnés par rapport à leur ancêtre (parent) le plus proche ou à la fenêtre.

4. Fixe : Les éléments sont positionnés par rapport à la fenêtre et restent fixes pendant le défilement.

5. Sticky : Le positionnement collant permet à un élément de basculer entre des positions relatives et fixes en fonction de la position de défilement et des valeurs de décalage Haut, Bas, Gauche et Droite.

Vous trouverez ci-dessous une illustration qui explique le positionnement CSS.

CSS Is Not Hard(You

Voici le code qui a permis de donner vie à l'illustration. N'hésitez pas à copier et modifier vous-même.



    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CSS Positioning</title>
    <link rel="stylesheet" href="style.css">


    <div>





<pre class="brush:php;toolbar:false">*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body{
    font-family: Arial, sans-serif;
    background-color: #f2f2f2;
    display: grid;
    place-content: center;
    min-height: 100vh;
}

.container{
    width: 100%;
    max-width: 1200px;
    height: auto;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    border: 1px solid red;
    gap: 20px;
    padding: 20px;
}

.static{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: static;

}

.relative{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: relative;
    top:30px;
    right: 30px;

}

.absolute{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: absolute;
    top: 30px;
    right: 100px;
}

.fixed{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: fixed;
    bottom: 0;
    right: 0;
}

.sticky{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: sticky;
    top: 0;
    right: 0;
}

— Faites une pause, respirez profondément, puis continuez !!—
- Mise en page CSS

1. Flexbox : Il s'agit d'une méthode de disposition unidimensionnelle utilisée pour disposer les éléments sur un seul axe (horizontalement et verticalement).

Caractéristiques d'une flexbox

  • display: flex - Cela crée une flexbox pour le conteneur.
  • align-items: center - Ceci contrôle l'alignement vertical du conteneur.
  • justifier-content : espace-entre-cela contrôle l'alignement horizontal du conteneur.
  • gap : ajoute un espacement entre les éléments flexibles sans avoir besoin de marges.

Voici l'avant et l'après d'une simple barre de navigation



    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Navigation Bar using CSS Flexbox</title>
    <link rel="stylesheet" href="style.css">


    <div>





<pre class="brush:php;toolbar:false">* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  min-height: 100vh;
}

li {
  list-style: none;
}
a {
  text-decoration: none;
  color: white;
}
nav {
  background-color: #333;
  color: #fff;
  padding: 10px;
}

ul {
  display: flex;
  align-items: center;
  gap: 2rem;
}

Résultat :

CSS Is Not Hard(You

CSS Is Not Hard(You

2. Grille : Il s'agit d'une méthode de mise en page en 2 dimensions utilisée pour créer des lignes et des colonnes.

Caractéristiques

  • display: grid - Cela crée une grille pour le conteneur.
  • grid-template-columns/grid-template-rows - Ceci définit une ligne ou une colonne pour le conteneur.
  • répéter(2, 1fr) - Cela crée 2 colonnes de même largeur.
  • écart : 10px - Ajoute un espacement entre les éléments de la grille.

Voici un avant et un après de quelques photos de chats que j'ai trouvées sur Unsplash.



    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CSS Positioning</title>
    <link rel="stylesheet" href="style.css">


    <div>





<pre class="brush:php;toolbar:false">*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body{
    font-family: Arial, sans-serif;
    background-color: #f2f2f2;
    display: grid;
    place-content: center;
    min-height: 100vh;
}

.container{
    width: 100%;
    max-width: 1200px;
    height: auto;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    border: 1px solid red;
    gap: 20px;
    padding: 20px;
}

.static{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: static;

}

.relative{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: relative;
    top:30px;
    right: 30px;

}

.absolute{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: absolute;
    top: 30px;
    right: 100px;
}

.fixed{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: fixed;
    bottom: 0;
    right: 0;
}

.sticky{
    background-color: #ccc;
    padding: 20px;
    border: 1px solid black;
    width: 300px;
    position: sticky;
    top: 0;
    right: 0;
}

Résultat :

CSS Is Not Hard(You

CSS Is Not Hard(You

Tableau de comparaison

Feature Flexbox Grid
Axis One-dimensional Two-dimensional
Alignment Horizontal/Vertical Rows and columns
Best for Navigation Bars Layouts like dashboards
Flexibility Better for small components Better for page layouts

Le positionnement et la mise en page sont le fondement du CSS. Comprendre quand et comment les utiliser rendra non seulement votre expérience de coiffage plus facile, mais également plus agréable et efficace. Pendant que cet article vous permet de démarrer avec Flexbox et Grid, je publierai bientôt un guide plus détaillé explorant leurs fonctionnalités avancées, trucs et astuces. Restez à l’écoute pour ça !

Et c'est la fin de Maîtriser les bases du CSS ! J'espère que vous avez aimé lire ceci autant que j'ai aimé l'écrire. Mais avant de nous séparer, j'aimerais avoir de vos nouvelles :

Quelle méthode de mise en page CSS préférez-vous pour vos projets : Flexbox ou Grid ? Et pourquoi ?

N'hésitez pas à partager vos réflexions dans les commentaires ci-dessous.

Au revoir pour l'instant!!!!

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
Y a-t-il des nombres aléatoires dans CSS?Y a-t-il des nombres aléatoires dans CSS?Apr 15, 2025 am 09:37 AM

CSS vous permet de créer des dispositions et des interfaces dynamiques sur le Web, mais en tant que langue, elle est statique: une fois qu'une valeur est définie, elle ne peut pas être modifiée. L'idée de

Élément flottant au milieu d'un paragrapheÉlément flottant au milieu d'un paragrapheApr 15, 2025 am 09:36 AM

Dites que vous voulez avoir une image (ou tout autre élément) à gauche visuellement à gauche dans un paragraphe de texte. Mais comme ... au milieu du paragraphe, pas juste à

Laisse faire un chargeur de page fantaisie mais simple mais simpleLaisse faire un chargeur de page fantaisie mais simple mais simpleApr 15, 2025 am 09:33 AM

Il est assez courant de voir un état de chargement sur les sites de nos jours, d'autant plus que les applications Web progressives et les sites réactifs sont en augmentation. C'est une façon de

Le paysage du développement d'applications multiplateformeLe paysage du développement d'applications multiplateformeApr 15, 2025 am 09:29 AM

Je ne traque pas très bien ce truc, mais je comprends. Si vous voulez une application native pour Android et iOS, ce serait bien d'avoir seulement à l'écrire une fois plutôt

Utilisation de Fusebox comme alternative de regroupement à WebPack pour réagirUtilisation de Fusebox comme alternative de regroupement à WebPack pour réagirApr 15, 2025 am 09:26 AM

Si vous recherchez un alternative Bundler à WebPack, vous voudrez peut-être jeter un œil à Fusebox. Il s'appuie sur ce que WebPack offre - Splicting de code, chaud

Ce que j'aime dans l'écriture des styles avec svelteCe que j'aime dans l'écriture des styles avec svelteApr 15, 2025 am 09:25 AM

Il y a eu beaucoup de battage médiatique bien mérité récemment autour de Svelte, le projet accumulant plus de 24 000 étoiles Github. Sans doute le javascript le plus simple

Actualités hebdomadaires de la plate-forme: propriété CSS Column-Span, ADA s'applique aux sites Web, des descriptions d'images générées automatiquementActualités hebdomadaires de la plate-forme: propriété CSS Column-Span, ADA s'applique aux sites Web, des descriptions d'images générées automatiquementApr 15, 2025 am 09:23 AM

Dans cette semaine Roundup: les dispositions multi-colonnes gagnent un large support, l'ADA signifie plus A11y pour les détaillants, et Google fait quelque chose à propos de toute l'image vide

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

Navigateur d'examen sécurisé

Navigateur d'examen sécurisé

Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

MantisBT

MantisBT

Mantis est un outil Web de suivi des défauts facile à déployer, conçu pour faciliter le suivi des défauts des produits. Cela nécessite PHP, MySQL et un serveur Web. Découvrez nos services de démonstration et d'hébergement.

Version Mac de WebStorm

Version Mac de WebStorm

Outils de développement JavaScript utiles