Web Design for Kids Mise en page CSS

Bienvenue à la sixième leçon de notre série Web Design for Kids, CSS Layout!

C'est là que nous mettons tous nos éléments exactement où nous les voulons à l'écran. Nous allons ajouter à nos fichiers HTML et CSS pour le faire.

Pour vous rappeler, jetez un coup d'œil au site Web que nous sommes en train de construire. Les fichiers de ce cours peuvent être téléchargés ici et n'oubliez pas de poser vos questions dans la section commentaires au bas de cette page..

Avant de commencer

Il y a quelques choses que nous devons savoir avant de sauter directement dans disposition. Dans cette première partie, nous verrons comment rester organisé. Nous allons couvrir quelques bases de positionnement et parler de quel type de CSS Propriétés sont utilisés pour la mise en page.

Commande CSS

Garder un document CSS organisé est très important. Une organisation appropriée nous permettra de trouver plus facilement toutes les pièces de notre fichier, ce qui facilitera les modifications et l'ajout d'éléments ultérieurement. De manière générale, il est préférable de commander notre CSS déclarations dans l'ordre où ils se déroulent sur la page.

Nous ajouterons des styles dans cette leçon à principale, par exemple. Ce style ajouté à un élément aussi important devrait être inclus dans notre document CSS avant tout autre élément imbriqué dans principale.

Le modèle de boîte

Les éléments HTML ressemblent un peu aux boîtes rectangulaires. le Modèle de boîte CSS décrit l'espacement de ces boîtes.

Chaque boîte a quatre côtés. Nous pouvons appliquer une valeur aux quatre côtés à la fois dans notre CSS via rembourrage, frontière, et / ou marge. Cependant, si nous voulons attribuer un style à un côté d'un élément, nous pouvons également le faire. Par exemple:

padding-left: 20px; bordure: solide 4px # 205D76;

Disons que cette case rose représente du texte. Nous pouvons voir que le rembourrage a été ajouté seulement à gauche et une épaisse bordure bleue couvre tout quatre côtés du contenu.

Flexbox

CSS nous donne un ensemble de propriétés spécialement conçues pour nous aider avec la mise en page de notre site Web. Ainsi, alors que le modèle de boîte aide à expliquer la espacement autour des éléments HTML, boîte souple va nous permettre de bouge toi ces éléments en place.

Lorsque nous utilisons flexbox sur un élément conteneur, cet élément devient un conteneur souple et tous les éléments qu'il contient deviennent articles flexibles.

Lorsque nous appliquons flexbox à un conteneur, les éléments sont automatiquement disposés le long d'une ligne droite (horizontalement) et nous pouvons ensuite entrer plus dans les détails avec d'autres propriétés de flexbox..

Nous n'aurons pas besoin d'utiliser trop de flexbox pour notre site Web, mais il est important de penser à la flexbox car elle est considérée comme le moyen le plus moderne et approprié pour positionner de petits morceaux de contenu sur un site Web..

Entête

le h1 et image de la ville dans le entête sont centrés sur la page. Il y a plusieurs façons de centrer quelque chose avec CSS, mais pour le moment, nous allons utiliser text-align: center; sur le entête.

Nous indiquerons l'en-tête en utilisant son nom de classe que nous avons ajouté précédemment:

.primary-header text-align: center; 

N'oublie pas! Enregistrez les documents et actualisez le navigateur pour voir nos modifications au fur et à mesure que nous les apportons.!

Sections

La toute première chose que nous voudrons faire à nos sections est de faire en sorte que le contenu, l’image et la liste, dans chaque section, soient placés côte à côte plutôt que superposés..

Pour ce faire, nous utiliserons boîte souple. La Flexbox s’applique aux éléments d’un élément conteneur à l’aide de affichage: flex; sur le conteneur:

.section magasin display: flex; afficher: -webkit-flex; / * Ceci est un préfixe de vendeur! * /

Pour ramener cela à ce dont nous avons parlé plus tôt, l’image et div contenant la liste des magasins sont maintenant articles flexibles, parce qu'ils sont dans cette conteneur souple.

Bien qu'il existe de nombreuses options pour spécifier exactement où un élément doit aller, le comportement par défaut de flexbox ici fonctionne parfaitement pour nous et la liste de notre magasin se trouve maintenant à droite de l'image du magasin..

Une note sur les «préfixes des vendeurs»

Puisque Flexbox est relativement nouveau, tous les navigateurs n’ont pas eu la chance de l’inclure correctement. Pour contourner ce problème, nous pouvons inclure un préfixe du vendeur propriétés flexbox, en ajoutant ce support manquant pour le moment. Bien que nous nous concentrions uniquement sur les versions les plus récentes des navigateurs modernes de ce projet, nous devrons néanmoins inclure un -webkit- Préfixe du fournisseur pour Flexbox pour vous assurer qu'il fonctionne dans «Safari».

Image et listes

Nous pourrions utiliser un peu d'espacement entre l'image et l'élément contenant tout le texte. Dans notre code HTML, ajoutons une classe de Détails du magasin au div contenant le texte.

Après avoir sauvegardé cela, nous pouvons passer à notre CSS et ajouter cet espacement, mais seulement au la gauche de la div:

.store-details margin-left: 30px; 

Espacement de liste par défaut

Il y a un espacement à gauche des listes non ordonnées de nos magasins. C'est parce qu'il y a des style par défaut cela vient avec l'utilisation d'une liste HTML. Parfois, ce style par défaut est correct et d'autres fois, il se peut qu'il ne produise pas l'effet recherché..

Nous pouvons nous débarrasser de cet espacement par défaut en utilisant rembourrage: 0; sur la liste non ordonnée, mais cela ferait que nos points de balle vont trop loin à gauche par rapport à l'en-tête de notre liste.

Nous voulons un peu de rembourrage ici, mais pas autant que prévu par le style par défaut de la liste. Définir un rembourrage gauche de 15px sur la liste alignera nos points avec le titre assez bien, nous allons donc l'ajouter à ce que nous avons ajouté à la liste dans la leçon précédente:

.store-list padding-left: 15px; / * style ajouté * / color: # FFC122; 

Espace entre les éléments de la liste

Nous avons toujours le problème mentionné dans la leçon précédente, les éléments de la liste étant trop rapprochés. Pour résoudre ce problème, ajoutons une classe de nom du magasin à tous les éléments de la liste,

  • , dans notre HTML. Nous ajouterons ensuite une petite marge au bas de ces articles.

    .nom de magasin margin-bottom: 10px; 

    Marges et Centrage

    L'espacement doit être ajouté aux sections et centré sur la page. Nous ferons cela à travers le marge et largeur Propriétés.

    Encore une fois, nous ajouterons au style que nous avons déjà écrit:

    .section magasin display: flex; afficher: -webkit-flex; marge: auto 50px; largeur: 450px; 

    le 50px valeur dans marge ici applique cette quantité d'espace au Haut de chaque magasin-section. Suite à cela avec auto indique au navigateur de prendre en compte la largeur de l'élément (que nous avons définie sur 450px) et le centrer automatiquement dans la fenêtre du navigateur.

    Bas de page

    Pour notre bas de page nous allons centrer le texte et ajouter une petite quantité de rembourrage pour vous assurer que ce texte n'est pas trop proche des bords du pied de page.

    .primary-footer padding: 2px; text-align: center; couleur de fond: # FFC122; 

    Marge corporelle

    Nous avons parlé de style par défaut un peu quand nous obtenions nos listes en place. le corps élément est livré avec ses propres styles par défaut, dont l’un est un marge qui entoure toute la page. Bien que parfois cela ne pose pas de problème, nous pouvons voir que cela empêche la Couleur de fond de nôtre bas de page d'étirer complètement sur les côtés de la fenêtre du navigateur.

    La solution ici est de revenir au corps de notre document CSS et d'ajouter ce qui suit:

    corps marge: 0; 

    Conclusion

    Dans ce cours, nous avons mis tous nos éléments en place grâce aux techniques de mise en page CSS. Bien qu'il y ait généralement plusieurs façons d'obtenir une mise en page spécifique, se familiariser davantage avec le modèle de boîte CSS et la flexbox offre une compréhension très solide de ces différentes approches..

    Puisque notre site est complet (félicitations!), Nous allons tout parler de conception, typographie, et Couleur dans les leçons à suivre. Cela vous aidera à devenir un concepteur de sites Web averti et complet..

    On se voit en ville!