Vue实战081:多HTML标签元素如何实现并排显示详解

在前端对多个相同的标签元素进行有序的排列是非常常见的需求,当我们有多个相似功能出现在同一个区域时我们就需要合理的排列这些元素。比如我这里的云服务提供了多个功能模块展示给用户,这个时候我们就会将每个模块所涉及到的内容打包成一个整体来设计。

HTML元素构建

在Vue相似的功能展现我们可以通过v-for来实现,modulars中的数据我们口可以通过登录直接从后台获取。这样不管有多少个模块我们都可以快速的实现DOM元素的渲染,也可以减少样式的书写,提高代码执行效率。这里每个mould都是一个功能模块的组合,里面包含了标题、图片、和功能描述等信息。

CSS样式模型

元素排序主要是通过CSS样式表来完成,我们都知道每个div盒子(class="mould")的默认样式属性是独占一行显示,要想解决div独占一行方法通常有两种要么将该div设置浮动要么就设置display样式。而父级的div高度通常由内容撑开,宽度通常可以用父级容器的百分百进行设定。

float并排显示

float可以定义元素的浮动属性,使元素向左或向右移动来实现布局效果,常用来配合div标签做网页布局。float会使该元素脱离文档流但仍然会占据位置(浮动元素会生成一个区域块,不管是何种标签元素都可以),其他相邻的元素则会无视设置float属性的元素紧跟其后继续排列。如果对当前的所有元素设置浮动,那么就会当前的所有元素就会依次排列。所以利用float属性可以实现并排显示的效果,当然用完float浮动别忘了清除浮动。

overflow:hidden清除浮动

标签元素通过float浮动后不属于html文档流,浮动之后的元素如果需要回到文档流中就需要将前面的浮动清除。清除浮动有多种方式可以实现,最简单的方式就是在父级使用overflow:hidden来清除浮动。"overflow:hidden"可以溢出隐藏,设置该属性可以将内容区域超出来的部分隐藏使内容区域完全包含在该包含块中。利用该属性可以让父元素包住这个脱离了文档流的浮动元素,以达到清除包含块内子元素的浮动影响。

clear:both来清除浮动

当然也可以用clear:both来清除浮动,clear可以指定元素对象不允许有浮动。利用clear:both清除浮动可以把float的元素拽回文档流,实现方法可以在浮动元素的尾部添加一个空的div标签并设置 clear:both属性 或在下一个元素上加clear:both,可以可以在父级div定义创建伪元素:after设置clear:both属性 。

display并排显示

display有两种属性情况分别是inline(同行显示)和flex(弹性布局),display:inline属性可以让元素对象实现同行并排显示(这个不是我们现在需要的效果)。display:flex是我们非常喜欢的的弹性布局方式,可以简洁、快速的实现想要的弹性布局效果。定义了display:flex属性之后可以通过 justify-content 属性调整子元素的水平对齐方式,通过align-items属性调整子元素的垂直对齐方式。当父元素宽度不够时flex默认会等比例压缩(不会自动换行),这时候我们需要通过设置 flex-wrap属性(默认为 nowrap,这里指定wrap)来使其换行即可。

总结:

以上内容是小编给大家分享的【Vue实战081:多HTML标签元素如何实现并排显示详解】,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。更多Vue实战技巧可以参考以下专栏:

举报
评论 0