Maison  >  Article  >  Applet WeChat  >  Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

高洛峰
高洛峰original
2018-05-10 17:45:564007parcourir

Cet article présente la série de développement d'applets WeChat (5) Explication détaillée de la disposition Flex

1 : Disposition Flex

La disposition Flex est illustrée dans la figure 1

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

Figure 1

1.1 Attributs du conteneur Flex

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

1.2 Attributs des éléments dans le conteneur Flex

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

Si align est défini, il écrasera le justifier-contenu dans les attributs du conteneur et les attributs définis par align-items


Dans le projet de développement d'applet WeChat , créez une nouvelle mise en page de fichier, puis créez divers fichiers (nommés d'après la mise en page),

Ajoutez le code suivant à layout.wxml :

<view class="container1">

<view class="item1">
1
</view>

<view class="item1">
2
</view>

<view class="item1">
3
</view>

<view class="item1">
4
</view>

</view>

Ajoutez le code suivant à layout.wxss :

.container1{
    height: 100%;
    width:100%;
    
}


.item1{
    height:100rpx;
    width:100rpx;
    background-color:cyan;
    border: 1px solid #fff
}

Compilez et exécutez comme indiqué dans la figure 2

Remarque : dans le code ci-dessus, 4 sous-éléments view (item1) sont ajoutés au conteneur conteneur1, ainsi que la largeur et la hauteur de chaque item1 sont définis sur des valeurs fixes dans le fichier de style de item1 : 100rpx, rpx est l'unité de mise à l'échelle liée à la taille de l'écran, différente du px fixe, le côté de chaque item1 est de 1px, ligne continue (solide ), blanc (#fff)

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

Modifiez .container1 comme suit : (Ajoutez display:flex;) Compilez et exécutez comme indiqué dans la figure 3 : On peut voir que le La disposition flexible est la disposition horizontale par défaut des éléments

.container1{
    height: 100%;
    width:100%;
    
    display:flex;
}

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

1.1.1 Attributs du conteneur : flex-direction

Ajoutez le code suivant dans .container1 : Indique la configuration de la disposition flexible pour disposer les éléments verticalement (de gauche à droite comme axe transversal, de haut en bas comme axe principal), comme le montre la figure 2 illustrée. (ligne : la disposition flexible organise les éléments horizontalement --- de gauche à droite comme axe principal, de haut en bas comme axe transversal)

flex-direction:column

1.1.2 Conteneur attributs : flex -wrap

Ajoutez le code suivant à .container1 : En même temps, copiez le code de l'élément dans layout.wxml dans les 8 vues d'éléments, compilez et exécutez, l'effet est montré dans la figure 4, on peut voir que la hauteur et la largeur d'origine sont de 100rpx, carré La vue a été transformée en rectangle.

flex-wrap:nowrap

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

Si modifié avec le code suivant : Compilez et exécutez comme indiqué dans la figure 5 : Assurez-vous que chaque sous-vue est un carré, puis mettez La 8ème vue enfant qui ne rentre pas est placée sur la ligne suivante

flex-wrap:wrap

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

1.1.3 Propriétés du conteneur : flex -flow

flex-flow : enroulement de la ligne, compilation et exécution des résultats : comme le montre la figure 5, flex-flow est équivalent à la combinaison des deux attributs flex-direction et flex-wrap

1.1.4 Attribut du conteneur : justifier-content


Ajoutez le code suivant à .container1 : Compilez et exécutez comme indiqué dans la figure 6. Indique l'alignement sur l'axe principal. Puisque dans le code ci-dessus nous définissons flex-flow: wrap row --- cela équivaut à ce que l'axe principal soit de gauche à droite, donc le 8ème élément qui ne peut pas être affiché sur une seule ligne est affiché. au centre de la ligne suivante, et les sept premières sous-vues, également affichées au centre d'une ligne, avec des marges vides sur les côtés gauche et droit

justify-content:center

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

justify-content:flex-end (Lorsque l'axe principal est de gauche à droite : aligné à droite)

L'effet de compilation et d'exécution est illustré dans la figure 7 :

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

justify-content:flex-start (axe principal Pour le cas de gauche à droite : aligné à gauche), l'exemple ne montre pas


justify-content:space-around --- l'effet est montré dans la figure 8, chaque sous-vue à gauche et à droite Il y a des marges

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

justify-content : espace entre---L'effet est illustré à la figure 9. Chaque sous-vue a des marges à gauche et à droite, mais la première et la dernière vue sont alignées à gauche et à droite sans laisser de bords

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

1.1.5容器属性:align-items

上面已经很详细讲解主轴上的对齐方式,这里关于这个交叉轴上的对齐方式同理很简单,就不详细展开了。

1.2.1 容器内元素属性:flex-grow

layout.wxml中修改代码如下:增加i3

<view class="item1 i3">
3
</view>

layout.wxss中修改代码如下:在item1中增加:  flex-grow: 1,增加i3,表示在一行中如果有剩余空间的话,i3之外的子view占1份空间,而i3子view占2份空间,编译运行效果如图10所示:可以看出i3view所占据的空间比其余3个子view大,但是没有到2倍

.item1{
    height:100rpx;
    width:100rpx;
    
    border: 1px solid #fff;
    flex-grow: 1
}

.i3{
    flex-grow: 2
}

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

1.2.2容器内元素属性:flex-shrink

layout.wxml再增加4个子view


layout.wxss中修改代码如下:i3的flex-shrink为0,其余子view为1,这表示当空间不足时所有子view都等比缩小,但是i3的view保持大小不变,编译运行,效果如图11所示

.item1{
    height:100rpx;
    width:100rpx;
    
    border: 1px solid #fff;
    flex-shrink: 1
}


.i3{
    flex-shrink: 0
}

Série de développement de programmes WeChat Mini (5) Explication détaillée de la disposition Flex

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