两列等高布局在项目中的应用

2024-03-24 20:59
文章标签 应用 布局 项目 两列

本文主要是介绍两列等高布局在项目中的应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

遇到的问题

最近开发一个小型项目,项目只有两个页面,一个主页面,一个列表页面。项目使用的是vue技术栈,在开发页面的组件是遇到了一个布局问题,布局如下:
在这里插入图片描述
要求:
1.外部容器的高度由图片决定
2.图片的宽度固定,右侧元素分配剩余空间
3.右侧元素的高度于图片的一样高
4.右侧上方文字不固定,但是最多不超过两行,下方文字总是位居底部

分析问题

由上面的要求可以得出以下结论:
1.这是一个两列等高布局
2.右侧是一个垂直方向的两端对齐布局
3.需要多行文本溢出

我们看一下这些问题的常见解决方案:

常见的两列等高布局解决方法
1.flex布局

<div class="demo1 demo"><div class="left">left</div><div class="right">right</div>
</div>
.demo {background-color: aliceblue;
}.demo .left {width: 100px;height: 100px;background-color: aquamarine;
}.demo .right {background-color: chartreuse;
}.demo1 {display: flex;align-items: stretch;
}.demo1 .right {flex: 1;
}.demo1 .left {flex-shrink: 0; /*固定宽度*/
}

缺点: IE9及IE9以下版本不支持flex属性
优点:实现方便,还可以方便实现各种比例

2.使用margin和padding正负抵消

<div class="demo2 demo"><div class="left">left</div><div class="right">right</div>
</div>
.demo {background-color: aliceblue;
}.demo .left {width: 100px;height: 100px;background-color: aquamarine;
}.demo .right {background-color: chartreuse;
}.demo2 {overflow: hidden;
}.demo2 .left,
.demo2 .right {float: left;margin-bottom: -9999px;padding-bottom: 9999px;
}.demo2 .right {float: right;width: calc(100% - 100px);
}

优点:兼容所有浏览器
3.table布局

<div class="demo3 demo"><div class="left">left</div><div class="right">right<br/>right</div>
</div>
.demo {background-color: aliceblue;
}.demo .left {width: 100px;height: 100px;

这篇关于两列等高布局在项目中的应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/842781

相关文章

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

golang内存对齐的项目实践

《golang内存对齐的项目实践》本文主要介绍了golang内存对齐的项目实践,内存对齐不仅有助于提高内存访问效率,还确保了与硬件接口的兼容性,是Go语言编程中不可忽视的重要优化手段,下面就来介绍一下... 目录一、结构体中的字段顺序与内存对齐二、内存对齐的原理与规则三、调整结构体字段顺序优化内存对齐四、内

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re

配置springboot项目动静分离打包分离lib方式

《配置springboot项目动静分离打包分离lib方式》本文介绍了如何将SpringBoot工程中的静态资源和配置文件分离出来,以减少jar包大小,方便修改配置文件,通过在jar包同级目录创建co... 目录前言1、分离配置文件原理2、pom文件配置3、使用package命令打包4、总结前言默认情况下,

CSS3中使用flex和grid实现等高元素布局的示例代码

《CSS3中使用flex和grid实现等高元素布局的示例代码》:本文主要介绍了使用CSS3中的Flexbox和Grid布局实现等高元素布局的方法,通过简单的两列实现、每行放置3列以及全部代码的展示,展示了这两种布局方式的实现细节和效果,详细内容请阅读本文,希望能对你有所帮助... 过往的实现方法是使用浮动加

python实现简易SSL的项目实践

《python实现简易SSL的项目实践》本文主要介绍了python实现简易SSL的项目实践,包括CA.py、server.py和client.py三个模块,文中通过示例代码介绍的非常详细,对大家的学习... 目录运行环境运行前准备程序实现与流程说明运行截图代码CA.pyclient.pyserver.py参

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

IDEA运行spring项目时,控制台未出现的解决方案

《IDEA运行spring项目时,控制台未出现的解决方案》文章总结了在使用IDEA运行代码时,控制台未出现的问题和解决方案,问题可能是由于点击图标或重启IDEA后控制台仍未显示,解决方案提供了解决方法... 目录问题分析解决方案总结问题js使用IDEA,点击运行按钮,运行结束,但控制台未出现http://

解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题

《解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题》文章详细描述了在使用lombok的@Data注解标注实体类时遇到编译无误但运行时报错的问题,分析... 目录问题分析问题解决方案步骤一步骤二步骤三总结问题使用lombok注解@Data标注实体类,编译时

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下