CSS等高布局的6种方式介绍

下面小编就为大家带来一篇css等高布局的6种方式介绍。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

前面的话

等高布局是指子元素在父元素中高度相等的布局方式。等高布局的实现包括伪等高和真等高,伪等高只是看上去等高而已,真等高是实实在在的等高。本文将介绍边框模拟、负margin这两种伪等高以及table实现、absolute实现、flex实现和js判断这四种真等高布局

伪等高

边框模拟  

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

因为元素边框和元素高度始终是相同高度,用元素的边框颜色来伪装左右两个兄弟元素的背景色。然后将左右两个透明背景的元素使用absolute覆盖在中间元素的左右边框上,实现视觉上的等高效果

[注意]左右两侧元素高度不能大于中间元素高度,否则无法撑开容器高度

CSS Code复制内容到剪贴板

   body,p{margin: 0;}   .parent{       position: relative;   }   .center{       box-sizing:border-box;       padding: 0 20px;       background-clip: content-box;       border-left: 210px solid lightblue;       border-right: 310px solid lightgreen;   }   .left{       position: absolute;       top: 0;       left: 0;       width: 200px;   }   .rightright{       position: absolute;       top: 0;       rightright: 0;       width: 300px;   }   

XML/HTML Code复制内容到剪贴板

left

PHP房产程序[BBWPS]
PHP房产程序[BBWPS]

[PHP房产程序|BBWPS]功能介绍 1、5种信息类别发布:出租、求租、出售、求购、楼盘信息,支持会员发布信息审核; 2、灵活的信息参数设置; 3、充足的信息字段; 4、简单易用的发布/编辑功能,支持配图上传; 5、灵活的信息管理功能; 6、信息输出伪静态,方便搜索引擎抓取数据; 7、支持RSS输出; 8、内置数据高速缓冲技术,可灵活设置缓冲功能是否启动及过期时间; 9、支持 Google 地图

PHP房产程序[BBWPS] 0
查看详情 PHP房产程序[BBWPS]

center

center

right

CSS等高布局的6种方式介绍

负margin  

因为背景是在padding区域显示的,设置一个大数值的padding-bottom,再设置相同数值的负的margin-bottom,使背景色铺满元素区域,又符合元素的盒模型的计算公式,实现视觉上的等高效果

[注意]如果页面中使用锚点跳转时,将会隐藏部分文字信息

[注意]如果页面中的背景图片定位到底部,将会看不到背景图片

CSS Code复制内容到剪贴板

   body,p{margin: 0;}   .parent{       overflow: hidden;   }   .left,.centerWrap,.rightright{       float: left;       width: 50%;       padding-bottom: 9999px;       margin-bottom: -9999px;   }   .center{       margin: 0 20px;   }   .left,.rightright{       width: 25%;   }   

XML/HTML Code复制内容到剪贴板

left

center

center

right

CSS等高布局的6种方式介绍

真等高

table  

table元素中的table-cell元素默认就是等高的

CSS Code复制内容到剪贴板

   body,p{margin: 0;}   .parent{       display: table;       width: 100%;       table-layout: fixed;   }   .left,.centerWrap,.rightright{       display: table-cell;   }   .center{       margin: 0 20px;   }   

XML/HTML Code复制内容到剪贴板

left

center

center

right

CSS等高布局的6种方式介绍

absolute  

设置子元素的top:0;bottom:0;使得所有子元素的高度都和父元素的高度相同,实现等高效果

CSS Code复制内容到剪贴板

   body,p{margin: 0;}   .parent{       position: relative;       height: 40px;   }   .left,.center,.rightright{       position: absolute;       top: 0;       bottombottom: 0;   }   .left{       left: 0;       width: 100px;   }   .center{       left: 120px;       rightright: 120px;   }   .rightright{       width: 100px;       rightright: 0;   }   

XML/HTML Code复制内容到剪贴板

left

center

center

right

CSS等高布局的6种方式介绍

flex  

flex中的伸缩项目默认都拉伸为父元素的高度,也实现了等高效果

CSS Code复制内容到剪贴板

   body,p{margin: 0;}   .parent{       display: flex;   }   .left,.center,.rightright{       flex: 1;   }   .center{       margin: 0 20px;   }   

XML/HTML Code复制内容到剪贴板

left

center

center

right

CSS等高布局的6种方式介绍

js  

当子元素高度不同时,进行js判断,增加较低子元素的padding-bottom,使得各个子元素实现等高效果

CSS Code复制内容到剪贴板

   body,p{margin: 0;}   .parent{overflow: hidden;}   .left,.center,.rightright{       float: left;       width: 25%;   }       .center{       width: 50%;       padding: 0 20px;       background-clip: content-box;       box-sizing: border-box;   }   

XML/HTML Code复制内容到剪贴板

left

center

center

right

JavaScript Code复制内容到剪贴板

   function getCSS(obj,style){       if(window.getComputedStyle){           return getComputedStyle(obj)[style];       }       return obj.currentStyle[style];   }   var oParent = document.getElementById('parent');   var oLeft = oParent.getElementsByTagName('p')[0];   var oCenter = oParent.getElementsByTagName('p')[1];   var oRight = oParent.getElementsByTagName('p')[2];   function eqHeight(obj1,obj2){       var oDis = obj1.clientHeight - obj2.clientHeight;       if(oDis > 0){           obj2.style.paddingBottom = parseFloat(getCSS(obj2,'padding-bottom')) + oDis + 'px';       }else{           obj1.style.paddingBottom = parseFloat(getCSS(obj1,'padding-bottom')) +  Math.abs(oDis) + 'px';       }   }   eqHeight(oLeft,oCenter);   eqHeight(oLeft,oRight);   

CSS等高布局的6种方式介绍

以上这篇浅析CSS等高布局的6种方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持PHP中文网。

以上就是CSS等高布局的6种方式介绍的详细内容,更多请关注创想鸟其它相关文章!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月23日 21:17:11
下一篇 2025年12月23日 21:17:29

相关推荐

  • CSS超出文本指定宽度用省略号代替和文本不换行分析

    这篇文章主要介绍了css超出文本指定宽度用省略号代替和文本不换行的相关资料,小编觉的实用性非常,特此分享到本站平台,供大家参考 一般的文字截断(适用于内联与块): .text-overflow { display:block;/*内联对象需加 */ width:31em;/* 何问起 hovertr…

    好文分享 2025年12月23日
    000
  • css实现背景透明和文字不透明方法

    这篇文章介绍css实现背景透明和文字不透明方法 实现透明的css方法通常有以下3种方式,以下是不透明度都为80%的写法 css3的opacity:x,x 的取值从 0 到 1,如opacity: 0.8 css3的rgba(red, green, blue, alpha),alpha的取值从 0 到…

    2025年12月23日 好文分享
    000
  • 分析CSS常见兼容性问题的总结

    浏览器的兼容性问题,通常是因为不同的浏览器对同一段代码有不同的解析,造成页面显示不统一的情况。 这里谈到的浏览器,主要指IE6/IE7/IE… FireFox Chrome Opera Safari 等。 但更多的兼容还是考虑IE6/IE7/FF之间的斗争 先来谈谈CSS Hack 我们…

    2025年12月23日 好文分享
    000
  • CSS比较常用的翻转特效

    第一个:360度翻转特效 * { margin:0; padding:0;}.aa { width: 220px; height: 220px; margin: 0 auto; background: no-repeat url(“images/author.jpg”) left top; -web…

    好文分享 2025年12月23日
    000
  • 详解css background-attachment属性进阶

    这篇文章详解css background-attachment属性进阶 前提是定义了background-image属性,然后用background-attachment来指明背景图的位置是固定于视口的,还是随着包含块移动的。可简单理解为定义背景图片随滚动轴的移动方式。  取值: scroll:默认…

    2025年12月23日 好文分享
    000
  • 必看的css布局小技巧分享

    下面小编就为大家带来一篇必看的css布局小技巧分享。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 1.max-width: 当页面左右宽度缩小时,为了避免出现左右滚动条的糟糕体验,就可以用到max-width啦!页面比宽度小时,会自动缩小哦~ max-width : 5…

    好文分享 2025年12月23日
    000
  • 实例讲解使用CSS保持页面内容宽高比方法

    这篇文章实例讲解使用css保持页面内容宽高比方法,作者举了伪元素和vw单元等不同方法下的例子,需要的朋友可以参考下 需求描述:移动端实现横跨页面半圆。(类似问题,实现4×4的正方形网格) 简化问题,我们可以理解为实现一个高度和宽度比为1:2的块。 需要解决问题:        1,高度和宽…

    2025年12月23日 好文分享
    000
  • 将页脚固定在页面底部的CSS实战教程

    这篇文章主要介绍了将页脚固定在页面底部的css实战,其中注意一下css清理浮动的问题,需要的朋友可以参考下 页脚的位置问题 网页的页脚(footer),也就是通常用来放置帮助链接及版权信息的地方。页脚自然是应该位于页面底部的,但依照一般的做法,如果位于页脚之前的网页内容比较少,或者说使用了一个垂直分…

    2025年12月23日
    000
  • 详解CSS元素居中布局的简单方法

    这篇文章主要介绍了详解css元素居中布局的简单方法,文中介绍了内嵌元素和块元素以及行内块三种情况,需要的朋友可以参考下 首先我们需要知道元素都有哪些种类?     内嵌元素(display:inline;)如a,span,b,i 【一个不可定制的盒子】     [默认同行可以继续跟同类型标签]   …

    2025年12月23日
    000
  • 分享CSS优先级的详细分析

    在讲css优先级之前,我们得要了解什么是css,css是用来做什么的。 首先,我们对CSS作一个简单的说明:CSS是层叠样式表(Cascading Style Sheets)的简称。 它的规范代表了互联网历史上一个独特的发展阶段。现在对于从事网页制作的朋友来说,应该很少没有听说过CSS了,因为在讲c…

    2025年12月23日 好文分享
    000
  • 关于CSS知识点的集锦

    这篇文章介绍关于css知识点的集锦 CreateTime–2016年9月29日09:43:10Author:Marydon1.背景色线性渐变 background-color:linear-gradient(100deg,#FFF,#111);/*由黑色向白色渐变 deg表示度数*/ U…

    好文分享 2025年12月23日
    000
  • CSS文本超出指定宽度后隐藏并显示为省略号的实现示例代码

    下面小编就为大家带来css文本超出指定宽度后隐藏并显示为省略号的实现示例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 一般的文字截断(适用于内联与块): .text-overflow { display:block;/*内联对象需加*/ width:25em; …

    2025年12月23日
    000
  • 详解CSS的writing-mode文字排版属性使用的方法

    writing-mode经常被用来实现页面文字的竖排,这里我们来系统地看一下详解css的writing-mode文字排版属性使用的方法,其中包括一个古诗的例子来展示writing-mode文字竖排用法 语法: writing-mode : lr-tb | tb-rl /* 关键字值 */writin…

    好文分享 2025年12月23日
    000
  • css背景固定样式background-attachment属性基础介绍

    这篇文章主要为大家带来css背景固定样式background-attachment属性基础介绍,需要的朋友可以参考下 一、background-attachment属性 在CSS中,使用背景附件属性background-attachment可以设置背景图像是随对象滚动还是固定不动。 语法: back…

    2025年12月23日
    000
  • 分享CSS中一些@规则的用法

    这篇文章主要分享css中一些@规则的用法,是css入门学习中的基础知识,需要的朋友可以参考下 at-rule是一个声明,为CSS提供执行或怎么表现的指令。每个声明以@开头,后紧跟一个可用的关键字,这个关键字充当一个标识符,用于表示CSS该做什么。这是一个通用的语法,尽管每个at-rule有其它语法变…

    好文分享 2025年12月23日
    000
  • 使用CSS清除浮动的方法详解

    这篇文章主要介绍了使用css清除浮动的方法详解,值得注意的是并不是每次单纯把浮动清除掉就可以解决相关问题,文中最后谈到的闭合浮动的方案也非常值得一试,需要的朋友可以参考下 清除浮动方法方法一:使用带clear属性的空元素 在浮动元素后使用一个空元素如 ,并在CSS中赋予.clear{clear:bo…

    2025年12月23日
    000
  • 必看的css权威指南笔记

    下面小编就为大家带来一篇必看的css权威指南笔记。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 第1章 css和文档 1,元素:替换元素(img input),非替换元素(大多数span)。 2,link:rel(代表关系:stylesheet,候选样式表:alter…

    好文分享 2025年12月23日
    000
  • 使用CSS实现标题文字过长部分显示省略号的方法介绍

    这篇文章主要介绍了使用CSS实现标题文字过长部分显示省略号的方法介绍,并且讲解了针对单行文字溢出和多行文字溢出的情况,需要的朋友可以参考下前段时间在公司移动站的重构,遇到了一个产品列表title的需求是只显示两行,然后超过两行的字符用省略号显示。如下图的效果,当时第一感觉是这个需求只能通过后台输出的…

    好文分享 2025年12月23日
    000
  • CSS代码书写规范的学习指南

    这里为大家送上一份css代码书写规范的学习指南,包括代码注释和命名规范以及空格缩进等一应俱全,都来自大家平时的约定俗成,绝对值得学习借鉴,需要的朋友可以参考下 1.格式化代码1.1文件[建议]:CSS文件使用无BOM的UTF-8编码1.2缩进[强制]:使用 4 个空格做为一个缩进层级,不允许使用 2…

    好文分享 2025年12月23日
    000
  • 分享CSS字符编码引起乱码快速解决的方法

    下面小编就为大家带来一篇分享css字符编码引起乱码快速解决的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 乱码引起的CSS失效原理: 由于一个中文是两个字符组成,在编码不一致的情况下会引发字符的“重新”组合,(半个汉字的编码字符与后面的字符组合生成新的“文字”)…

    好文分享 2025年12月23日
    000

发表回复

登录后才能评论
关注微信