Maison interface Web tutoriel CSS CSS n'est pas difficile (il vous manque juste ces bases) - Maîtriser les bases (Partie 2)

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

Dec 17, 2024 am 06:23 AM

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.

<!DOCTYPE html>
<html lang="en">
<head>
    <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">
</head>
<body>
    <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;
}

Copier après la connexion
Copier après la connexion

— 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

&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
    &lt;title&gt;Navigation Bar using CSS Flexbox&lt;/title&gt;
    &lt;link rel="stylesheet" href="style.css"&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;div&gt;





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

Copier après la connexion

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.

&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
    &lt;title&gt;CSS Positioning&lt;/title&gt;
    &lt;link rel="stylesheet" href="style.css"&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;div&gt;





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

Copier après la connexion
Copier après la connexion

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 de ce site Web
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 chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds Tags

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Ajout d'ombres de boîte aux blocs et éléments WordPress Ajout d'ombres de boîte aux blocs et éléments WordPress Mar 09, 2025 pm 12:53 PM

Ajout d'ombres de boîte aux blocs et éléments WordPress

Créez un formulaire de contact JavaScript avec le cadre Smart Forms Créez un formulaire de contact JavaScript avec le cadre Smart Forms Mar 07, 2025 am 11:33 AM

Créez un formulaire de contact JavaScript avec le cadre Smart Forms

Créer un éditeur de texte en ligne avec l'attribut satisfaistable Créer un éditeur de texte en ligne avec l'attribut satisfaistable Mar 02, 2025 am 09:03 AM

Créer un éditeur de texte en ligne avec l'attribut satisfaistable

Faire votre première transition Svelte personnalisée Faire votre première transition Svelte personnalisée Mar 15, 2025 am 11:08 AM

Faire votre première transition Svelte personnalisée

Comparaison des 5 meilleurs constructeurs de formulaires PHP (et 3 scripts libres) Comparaison des 5 meilleurs constructeurs de formulaires PHP (et 3 scripts libres) Mar 04, 2025 am 10:22 AM

Comparaison des 5 meilleurs constructeurs de formulaires PHP (et 3 scripts libres)

Téléchargement de fichiers avec Multer dans Node.js et Express Téléchargement de fichiers avec Multer dans Node.js et Express Mar 02, 2025 am 09:15 AM

Téléchargement de fichiers avec Multer dans Node.js et Express

Meilleures animations et effets CSS sur Codecanyon 2025 (payé gratuitement) Meilleures animations et effets CSS sur Codecanyon 2025 (payé gratuitement) Mar 01, 2025 am 09:32 AM

Meilleures animations et effets CSS sur Codecanyon 2025 (payé gratuitement)

Travailler avec GraphQL Caching Travailler avec GraphQL Caching Mar 19, 2025 am 09:36 AM

Travailler avec GraphQL Caching

See all articles