Css3实现弹性盒模型应用

作为 css3 规范的一部分,弹性盒布局模型可以在很多典型的场景中简化完成布局所需的 css 代码。该布局模型也提供了很多实用的特性来满足常见的布局要求,包括对容器中条目的排列、对齐、调整大小和分配空白空间等。弹性盒布局模型可以作为 web 开发人员工具箱中的一个很好的工具。

 1、css清除浮动。父元素如果没有设置高度,将默认由子元素撑开父元素的高度。如果子元素设置了浮动,也不能撑开父元素的高度。

 2、使用@media only screen为不同屏幕大小的设备写样式其实是一件非常繁杂的事,所有构建的页面结构最好一样,然后通过设置 元素的display来影藏和显示元素。

 页面结构一旦成型, 除非是通过js动态增删元素,通过@media only screen我们只能 修改属性而不能增删元素。
 max-width和min-width是指整个窗口的宽度,包括滚动条的宽度。

 3、标准合模型、怪异合模型、弹性盒模型的区别和用法。 

4、bootstrap的相关属性和用法。

立即学习“前端免费学习笔记(深入)”;

上面就是今天所掌握的知识点,废话不多说入正题。
怎样实现以下同行元素子自动换行,且换行后,每一行元素依旧占满整个父元素的宽度。
请看下面几张图:
这里写图片描述
状态1
这里写图片描述
状态2
这里写图片描述
状态3
这里写图片描述
状态4
上面4张图是浏览器窗口由大到导航栏的状态变化。
我的页面是用bootstrap写的,上面是bootstrap中的按钮组,默认同行显示,由字体撑开按钮的大小
状态1到状态2
状态1的字体和按钮大小都比较大,这个过程我是通过css的@media only screen实现。
状态2到状态3
这是我们的重点。
      怎么实现行元素自动换行?
      如果同行元素有固定的宽度,一般都不会自动换行。
      如果同行元素采用百分比赋值,始终会有宽度值,不会实现换行。
      如果元素的宽高都是由内容撑开呢?
      给元素设置display:inline-block;
这里写图片描述
     悟空与八戒两个元素中间会出现缝隙。不过自动换行倒是实现了。
     如果给元素添加浮动效果呢?
这里写图片描述
     浮动效果要比display:inline-block;好。
     不过这两者虽然都实现了自动换行,但是最终效果却不是我们想要的。
     我们要的效果是由状态2到状态3,元素换行之后,该元素会占据整行,上一行空出来的空间会被其它元素所占满。
     我采用的方法是使用弹性盒模型
     父元素添加以下属性

 display: flex;//表示该元素为弹性盒模型元素。 flex-wrap: wrap;//表示遇到边界后会自动换行。

所有子元素添加

flex-grow: 1;//定义元素在整行中所占的比例,如果都为1,则同行所有的元素的宽度都相同。已换行的元素会 占据整行。如图状态3和状态4.

引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的条目进行排列、 对齐和分配空白空间。即便容器中条目的尺寸未知或是动态变化的,弹性盒布局模型也能正常的工作。在该布局模型中,容器会根据布局的需要,调整其中包含的条 目的尺寸和顺序来最好地填充所有可用的空间。当容器的尺寸由于屏幕大小或窗口尺寸发生变化时,其中包含的条目也会被动态地调整。比如当容器尺寸变大时,其 中包含的条目会被拉伸以占满多余的空白空间;当容器尺寸变小时,条目会被缩小以防止超出容器的范围。弹性盒布局是与方向无关的。在传统的布局方式 中,block 布局是把块在垂直方向从上到下依次排列的;而 inline 布局则是在水平方向来排列。弹性盒布局并没有这样内在的方向限制,可以由开发人员自由操作。

相关盒模型文章:

CSS 怪异盒模型和标准盒模型实例详解

弹性盒模型 flex 方法总结

以上就是Css3实现弹性盒模型应用的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1609062.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 00:34:14
下一篇 2025年12月24日 00:34:33

相关推荐

  • 前端入门之css3

    我们知道,如果你想学前端,那css3与html5是最基础也是最先学习的一门知识,今天就给大家带来前端入门之css3,让我们一起来看一下 废话不多说直接正题 什么是css3 css3形成页面的关键要素CSS3被拆分为”模块”。旧规范已拆分成小块,还增加了新的。一些最重要CSS3…

    好文分享 2025年12月24日
    000
  • CSS记录用户密码实现代码分享

    本文主要和大家介绍了css 记录用户密码的方法的相关资料,简单的css代码,甚至不符合图灵完备的语言,但是也能成为一些攻击者的工具,下面简单介绍一下如何使用css去记录用户的密码。但是这些css脚本会出现在第三方css库中,所以使用第三方css库也需要谨慎,确保代码安全。直接上代码解析: input…

    2025年12月24日
    000
  • css的重绘与重排实现实例

    本文主要和大家介绍了css重绘与重排的方法的相关资料,小编觉得挺不错的,现在分享给大家,希望能帮助到大家。 浏览器加载页面原理 通常在文档初次加载时,浏览器引擎会解析HTML文档来构建DOM树,之后根据DOM元素的几何属性构建一棵用于渲染的树。渲染树的每个节点都有大小和边距等属性,类似于 盒子模型 …

    好文分享 2025年12月24日
    000
  • 你必须要知道的俩个CSS字体属性

    这次给大家带来你必须要知道的俩个css字体属性,使用css字体属性的注意事项有哪些,下面就是实战案例,一起来看一下。 如何给英文和中文设置不同的字体? 但凡是中文字体,里面都包含了英文,但凡是英文字体,里面都没有包含中文,也就是说中文字体可以处理英文,而英文字体不能处理中文. 注意:如果想给界面中的…

    好文分享 2025年12月24日
    000
  • CSS的选择器有哪些常见问题

    这次给大家带来css的选择器有哪些常见问题,处理css的选择器常见问题的注意事项有哪些,下面就是实战案例,一起来看一下。 选择器常见的有哪几种?1.标签选择器p{ }/选择标签名为p的元素/2.类选择器.box{ }/选择class名为box的元素/3.ID选择器#header{ }/选择id名为h…

    好文分享 2025年12月24日
    000
  • 简述CSS中clearfix 的原理

    这次给大家带来简述css中clearfix 的原理,使用css中clearfix的注意事项有哪些,下面就是实战案例,一起来看一下。 DemoDemo中的CSS中用到这样一个样式: .clearfix:after{ content: ”; display: block; clear: both; 该…

    好文分享 2025年12月24日
    000
  • css如何实现毛毛虫爬行动作代码分享

    毛毛虫儿时大家都有见过,今天想起来写一个爬行的动作,我们先来看一下效果图,具体代码如下所示: html代码: css代码: body { background-color: #1B6CB2; margin: 0;}.container { position: absolute; width: 600…

    2025年12月24日
    000
  • css里有哪些长度单位

    这次给大家带来css里有哪些长度单位,使用css里的长度单位注意事项有哪些,下面就是实战案例,一起来看一下。 1.有两种类型的长度单位:相对和绝对。 相对长度单位指定了一个相对于其它长度属性的单位。使用相对单位的样式表更容易根据不同的输出环境缩放 相对单位有: em:相关字体的’font…

    好文分享 2025年12月24日
    000
  • CSS Tips段落每行渐变色文本效果的实现方法

    今天小编在codepen上看到一个css写的效果。一个段落的每行文本是渐变效果。对于单行文本或单个词实现渐变填充效果并不是什么奇怪的事情,不过对于一个段落的每一行实现一个文本渐变填充的效果。估计还是会令很多人感到好奇。如果你是其中好奇的一员,请继续往下阅读,一探其中之究竟! 目标效果 今天的目标效果…

    2025年12月24日 好文分享
    000
  • CSS如何实现卡片3D翻转效果

    本文主要和大家介绍了css实现卡片3d翻转效果的示例代码,希望能帮助到大家。 效果: 代码: html: css: 立即学习“前端免费学习笔记(深入)”; .main { position: absolute; top: 50%; left: 50%; width: 300px; height: 3…

    2025年12月24日
    000
  • table tr th 及table tr td 字体太多超出怎样用CSS解决

    这次给大家带来table tr th 及table tr td 字体太多超出怎样用css解决,table tr th 及table tr td 字体太多的css的解决方法,下面就是实战案例,一起来看一下。 要比js控制性能好,但是在firfox低版本有时显示重叠加粗 table{ table-lay…

    好文分享 2025年12月24日
    000
  • CSS3 calc()计算属性详细介绍

    正如其名,calc是css3中新增的计算属性,让很多属性增加了一个表达式的说法; calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,你可以使用calc()给元素的border、margin、pading、font-size、width和height等属性设置动态值。 怎…

    2025年12月24日
    000
  • css使用relative模仿百度首页top

    最近在学习html、css的过程中,想模仿一下百度首页。发现搜索框这一部分与上下其它元素的空白距离可以随着窗口大小变化,希望本文能帮助到大家。 效果实现 垂直伸缩 *{ padding: 0; margin: 0; } body,html{ height: 100%; } .content{ min…

    2025年12月24日
    000
  • css实现简单时间轴的实例代码

    本文主要和大家介绍了前端css实现最基本的时间轴的示例代码,分享给大家,给大家做个参考,希望能帮助到大家。 原型: 代码: 状态详情 #timeleft p { height: 65px; color: #333333; } #timecenter p { height: 65px; color: …

    2025年12月24日 好文分享
    000
  • CSS3实现渐变文字效果

    本文主要和大家分享css3实现渐变文字效果,我们主要和大家分享两种方法,希望能帮助到大家。 一、方法一:借助mask-image属性 方法一下的文字渐变效果 相应的HTML代码如下: 天赐美妞 与HTML相对应的CSS代码如下: 立即学习“前端免费学习笔记(深入)”; .text-gradient …

    好文分享 2025年12月24日
    000
  • CSS3中clip-path的用法简介

    一、基本概念 刷新 QQ 空间动态时,发现一则广告,随着用户上下滑动动态列表,就会自动切换广告图片,这样的效果对移动端本就不大的屏幕来说,无疑是很精妙的考虑,这样的效果是怎么实现的呢? 接下来就说说这个效果的具体实现思路: 将两张图片通过定位,相对于图片容器堆叠在一起; 在图片容器的左上角或右下角选…

    好文分享 2025年12月24日
    000
  • css3实现浏览器背景渐变方法代码

    本文主要和大家介绍介绍了css3编写浏览器背景渐变背景色的方法,我们会和大家分享这种渐变色背景实现的代码,希望能帮助到大家。 效果如下: 知识点:rgb全色循环算法,HEX与RGB颜色转换算法、CSS3颜色渐变,CSS3渐变色兼容ie方法,定时器与循环,函数封装,数组应用等。 css代码: *{ma…

    2025年12月24日
    000
  • css实现任意大小、方向和角度的箭头代码

    本文主要和大家介绍了使用css实现任意大小、任意方向和任意角度的箭头示例的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望能帮助到大家。 网页开发中,经常会使用到 下拉箭头 ,右侧箭头 立即学习“前端免费学习笔记(深入)”; 这样的箭头。 一般用css来实现: { display:…

    2025年12月24日 好文分享
    000
  • 5种css实现左中右布局的方式

    本文主要和大家介绍了css布局实现左中右布局的5种方式的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望能帮助到大家。 效果如下: 左中右布局 Document html *{ margin: 0; padding: 0; } article{ height: 100px; } s…

    2025年12月24日
    000
  • CSS的伪类内容生成

    这次给大家带来css的伪类内容生成,css的伪类内容生成的注意事项有哪些,下面就是实战案例,一起来看一下。 1、 通过 css 向已有的元素上增加新的文本(图片)内容选择器:    1、:before     向匹配元素之前增加生成的内容     定位到匹配元素开始的位置    2、:after  …

    好文分享 2025年12月24日
    000

发表回复

登录后才能评论
关注微信