Maison interface Web tutoriel CSS Six façons de disposer les éléments horizontalement

Six façons de disposer les éléments horizontalement

Sep 25, 2018 am 11:49 AM
css

Comme nous le savons tous, les éléments au niveau du bloc sont disposés verticalement par défaut et les éléments en ligne sont disposés horizontalement. Les éléments au niveau du bloc sont essentiellement utilisés dans la mise en page, comme div et d'autres balises courantes au niveau du bloc. Les éléments à plusieurs niveaux doivent-ils également être disposés horizontalement ? Cet article vous présentera six façons de réaliser une disposition horizontale des éléments au niveau des blocs.

Le premier type : display: inline-block

Tout d'abord, vous devez comprendre les éléments de bloc et les éléments en ligne

Block- Éléments de niveau : les éléments de niveau bloc incluent la largeur, la hauteur, le remplissage, la bordure et la marge. Ils sont disposés de haut en bas. Les éléments courants au niveau du bloc incluent div, p, form, ul, etc.

Éléments en ligne : la hauteur et la largeur sont déterminées par le contenu. Ils ne peuvent pas définir une taille fixe. Il n'y a pas de marge verticale et de remplissage. La disposition est horizontale pour la majorité de tous les éléments HTML. Par exemple, a, span, label, button, img, input...

Certaines personnes peuvent avoir des questions ici : "Les étiquettes Button, img et input peuvent définir la largeur et la hauteur, ainsi que la marge et le remplissage. " , pourquoi s'agit-il vraiment d'un élément en ligne ? " En fait, il existe deux manières principales de diviser les éléments HTML, à savoir "les éléments au niveau du bloc et les éléments en ligne" et les "éléments remplaçables et les éléments non remplaçables". La méthode de première division est présentée ci-dessus et la méthode de deuxième division est présentée ci-dessous :

Élément de remplacement : la compréhension populaire est un élément avec des attributs de largeur et de hauteur. L'élément de remplacement est similaire à l'élément display:inline-block. Vous pouvez définir la hauteur, la largeur et les marges intérieures et extérieures. Il comprend principalement img, input, textarea, select, object, audio et canvas. est un élément de remplacement.

Éléments non remplaçables : à l'exception des éléments de remplacement, le reste sont des éléments non remplaçables (O(∩_∩)O)

Après beaucoup de bêtises, nous savons que display: inline -block peut laisser les éléments être disposés horizontalement, mais il peut y avoir un petit problème avec cette disposition :

<style>
        div{
            display:inline-block;    width:200px;    height:200px;
        }
        .div1{
            background:green;
        }
        .div2{
            background:red;
        }
</style>
<div class = "div1">左边</div>
<div class = "div2">右边</div>
Copier après la connexion

C'est là que nous avons trouvé un écart entre les deux divs. Pourquoi ?

Le navigateur traitera les nouvelles lignes, les retraits et les espaces comme un seul espace. Même s'il y a deux espaces, ou une nouvelle ligne plus un espace, etc., ils seront analysés en un seul espace. La taille de cet espace est font-size/2. Il existe de nombreuses façons de combler cet écart.

1. Définissez la marge gauche de div2:-font-size/2

2 Définissez la taille de police des balises parentes des deux divs : 0

<🎜. >3. Définir un espacement négatif des mots

Le deuxième type : float : gauche/droite

L'attribut float peut éloigner l'élément du flux de document régulier, le long du côté gauche du récipient ou disposer horizontalement sur la droite.

Cette méthode peut être considérée comme la plus utilisée, mais il y a un problème. Dans la mise en page adaptative, la hauteur et la largeur des éléments ne sont généralement pas fixes, et seront automatiquement ajustées en fonction de la taille du contenu. c'est si les éléments enfants sont tous S'il s'agit d'un élément flottant, il y aura un degré élevé d'effondrement.

À titre d'exemple

<style>
        span{
            float:left;        width:200px;    height:200px;
        }
        .box1{
            background:green;
        }
        .box2{
            background:red;
        }
</style>
<div>
    <span class = "box1">左边</span>
    <span class = "box2">右边</span>
</div>
Copier après la connexion
Ici, le sous-élément div dans le châtaignier précédent est délibérément modifié en span. En fait, je veux exprimer que float peut implicitement convertir des éléments en bloc. éléments (position : absolue/fixe sont également disponibles), de sorte que la largeur et la hauteur peuvent être définies naturellement.

Alors, quel est le problème une fois les cartons disposés horizontalement ? C'est exact! La hauteur du conteneur parent s'effondre. À ce stade, la hauteur du conteneur parent div est 0, car l'élément flottant se détachera du flux de documents régulier et son conteneur parent l'ignorera lors du calcul de la hauteur. C'est quelque chose que nous ne voulons pas voir, car s'il y a d'autres balises de flux régulières derrière ce DIV fortement réduit, la page sera gâchée et d'autres résultats indésirables se produiront.

La solution est naturellement d'effacer les flottants. Il existe deux manières principales d'effacer les flottants :

1.clear:left/right/both, qui est spécialement utilisé pour effacer le CSS flottant.

2.BFC, car BFC a une règle "Lors du calcul de la hauteur de BFC, les éléments flottants participent également au calcul."

Parlons de plusieurs méthodes pour effacer les flottants avec clear :

1 Ajoutez une balise vide après le dernier élément enfant, puis définissez son style clear:both.

2. Dans le dernier élément enfant flottant, utilisez le pseudo element::after pour ajouter un style clair pour effacer le flottant

La troisième méthode : disposition du tableau

Cette méthode de mise en page n'est en fait pas couramment utilisée car elle pose divers problèmes.

La vitesse de rendu est lente

Augmente la quantité de code HTML et est difficile à maintenir

Le nom de la balise n'est pas conforme à la sémantique du tableau HTML. utilisé à l'origine pour les tableaux, et il n'est même pas utilisé pour la mise en page. C'est inapproprié

La structure des balises est relativement rigide et le coût des modifications ultérieures est plus élevé

etc. trop ici. Bref, essayez d'utiliser la disposition des tableaux

La quatrième méthode : le positionnement absolu

Cette méthode est également davantage utilisée dans le développement quotidien Comme mentionné précédemment, float peut créer des éléments. détacher. Pour un flux de documents régulier, position:absolute/fixed ici a également le même effet. La méthode de traitement a été mentionnée dans la disposition flottante, vous pouvez donc simplement la déplacer ici.

Ici, je veux parler du positionnement absolu position:absolute. Le positionnement est basé sur son premier parent et est un élément positionné statiquement tel que position:absolute/relative/fixed. S'il est introuvable, utilisez la racine. L'élément est utilisé comme base pour le positionnement. Généralement, l'élément parent position:ralative est utilisé en combinaison avec l'élément enfant position:absolute.

Le cinquième type : mise en page flexible CSS3

弹性布局因为其兼容性所以还没有得到广泛的认可,不过我觉得以后它肯定会独占鳌头,就跟我看好html的视频播放器一样,早晚都会干败flash,只是时间问题!!!

第六种:transform:translate

CSS3中用于动画的一个样式,但是他可是让两个元素横向排列,这里不多说直接上代码,请用谷歌浏览器运行一下:

<style>
        div{
            width:200px;    height:200px;
        }
        .box1{
            background:green;
        }
        .box2{
            transform: translateX(200px) translateY(-200px);
            background:red;
        }
    </style>
<div>
    <div class = "box1">左边</div>
    <div class = "box2">右边</div>
</div>
Copier après la connexion

效果和前几种方式一样。

以上就是我说分享实现横向布局的六种方式,其实每种方式都有很多大学问,我解释描述了冰山一角,并且没有过多的考虑浏览器的兼容性,不过还是希望对你有所帮助。

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

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

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)

Comment utiliser Bootstrap en Vue Comment utiliser Bootstrap en Vue Apr 07, 2025 pm 11:33 PM

L'utilisation de bootstrap dans vue.js est divisée en cinq étapes: installer bootstrap. Importer un bootstrap dans main.js. Utilisez le composant bootstrap directement dans le modèle. Facultatif: style personnalisé. Facultatif: utilisez des plug-ins.

Les rôles de HTML, CSS et JavaScript: responsabilités de base Les rôles de HTML, CSS et JavaScript: responsabilités de base Apr 08, 2025 pm 07:05 PM

HTML définit la structure Web, CSS est responsable du style et de la mise en page, et JavaScript donne une interaction dynamique. Les trois exercent leurs fonctions dans le développement Web et construisent conjointement un site Web coloré.

Comment écrire des lignes fendues sur bootstrap Comment écrire des lignes fendues sur bootstrap Apr 07, 2025 pm 03:12 PM

Il existe deux façons de créer une ligne divisée bootstrap: en utilisant la balise, qui crée une ligne divisée horizontale. Utilisez la propriété CSS Border pour créer des lignes de fractionnement de style personnalisées.

Comprendre HTML, CSS et JavaScript: un guide pour débutant Comprendre HTML, CSS et JavaScript: un guide pour débutant Apr 12, 2025 am 12:02 AM

WebDevelopmentReliesOnHTML, CSS, etjavascript: 1) HTMLSTRUCTURESCONTENT, 2) CSSSTYLESIT, et3) JavascriptAdddsInterActivity, Forming TheasisofmodernweBEBExperiences.

Comment configurer le cadre de bootstrap Comment configurer le cadre de bootstrap Apr 07, 2025 pm 03:27 PM

Pour configurer le framework Bootstrap, vous devez suivre ces étapes: 1. Référez le fichier bootstrap via CDN; 2. Téléchargez et hébergez le fichier sur votre propre serveur; 3. Incluez le fichier bootstrap dans HTML; 4. Compiler les sass / moins au besoin; 5. Importer un fichier personnalisé (facultatif). Une fois la configuration terminée, vous pouvez utiliser les systèmes, composants et styles de grille de Bootstrap pour créer des sites Web et des applications réactifs.

Comment insérer des photos sur bootstrap Comment insérer des photos sur bootstrap Apr 07, 2025 pm 03:30 PM

Il existe plusieurs façons d'insérer des images dans Bootstrap: insérer directement les images, en utilisant la balise HTML IMG. Avec le composant d'image bootstrap, vous pouvez fournir des images réactives et plus de styles. Définissez la taille de l'image, utilisez la classe IMG-FLUID pour rendre l'image adaptable. Réglez la bordure en utilisant la classe IMG-border. Réglez les coins arrondis et utilisez la classe Roundée IMG. Réglez l'ombre, utilisez la classe Shadow. Redimensionner et positionner l'image, en utilisant le style CSS. À l'aide de l'image d'arrière-plan, utilisez la propriété CSS d'image d'arrière-plan.

Comment utiliser le bouton bootstrap Comment utiliser le bouton bootstrap Apr 07, 2025 pm 03:09 PM

Comment utiliser le bouton bootstrap? Introduisez Bootstrap CSS pour créer des éléments de bouton et ajoutez la classe de bouton bootstrap pour ajouter du texte du bouton

Comment redimensionner le bootstrap Comment redimensionner le bootstrap Apr 07, 2025 pm 03:18 PM

Pour ajuster la taille des éléments dans Bootstrap, vous pouvez utiliser la classe de dimension, qui comprend: ajuster la largeur: .col-, .w-, .mw-ajustement Hauteur: .h-, .min-h-, .max-h-

See all articles