第二十四章多栏布局解决方案(什么是自适应?/)

news2024/11/16 21:29:22

什么是自适应?

指能使网页自适应显示在不同大小终端设备上新网页设计方式及技术.简单的来说自适应就是让同一个页面自动适应不同大小的设备,从而解决为不同设备提供不同版本的页面问题。

1.两列自适应

两列自适应布局是指左侧固定宽度,右侧自适应宽度。

左右两个盒子,左边固定宽度,右边设置 100%;

左侧盒子设置position:absolute;

右侧盒子中添加子盒子设置padding-left,值为左侧盒子的宽度;

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            padding: 0%;
            margin: 0%;
        }
        .left{
            width: 400px;
            height: 500px;
            background-color: darkcyan;
            position: absolute;
        }
        .right{
            width: 100%;
            height: 500px;
            background-color: blueviolet;
        }
        .box{
            height: 500px;
            padding-left: 400px;
        }
    </style>
</head>
<body>
    <div class="left"></div>
    <div class="right">
        <div class="box"></div>
    </div>
</body>
</html>

2.圣杯布局

经杯布局和双飞翼布局都是为了实现左右两栏固定宽度,中间部分自适应的三栏布局,不过两者实现的原理有所不同。以下是圣杯布局实现思路。

1、将三者都float:left,再加上一个position:relative;

2、middle 部分 width:100%占满;

3、此时middle占满了,所以要把left拉到最左边,使用margin-left:-100%;

4、这时left 拉回来了,但会覆盖middle内容的左端,要把middle内容拉出来,所以在外围container加上padding:0 220px 0 200px;

5.middle 内容拉回来了,但 left 也跟着过来了,所以要还原,就对 left 使用相对定位 left:-200px 同理,right 也要相对定位还原right:-220px;

6.到这里大概自适应就好了,如果想container高度要保持一致就可以给left middle right都加上min-height130px;

html代码:

以下的就是CSS代码: 

<style>
		*{
			margin: 0;
			padding: 0;
		}
		body{
			min-width: 700px;
		}
		.header,.footer{
			border: 1px solid yellow;
			background:green;
			text-align: center;
		}
		.left,.middle,.right{
			position: relative;
			float: left;
			min-height: 130px;
		}
		.container{
			padding: 0 220px 0 200px;
			overflow: hidden;
		}
		.left{
			margin-left: -100%;
			left: -200px;
			width: 200px;
			background: red;
		}
		.right{
			margin-left: -220px;
			right: -220px;
			width: 220px;
			background: green;
			
		}
		.middle{
			width: 100%;
			background: blueviolet;
			word-break: break-all;
			
		}
		.footer{
			clear: both;
		}
		</style>

下面是显示出来的效果:

 

3.双飞翼布局

双飞翼布局,始于淘宝 UED。如果把三栏布局比作一只鸟,可以把 main 看成是鸟的身体,left 和 right 则是鸟的翅膀。这个布局的实现思路是,先把最重要的身体部分放好,然后再将翅膀移动到适当的地方。 

左翼left 设置200px,右翼right 设置 220px 身体 main 自适应。

1、html 代码中,main 要放最前边,然后是left right;

2、将main left right 都float:left;

3、将main 占满 width:100%;

4、此时main占满了,所以要把left拉到最左边,使用margin-left:-100%,同理right使用margin- left:-220px;

5、main 内容被覆盖了吧,除了使用外围的padding,还可以考虑使用margin;给main增加一个内层div--main-inner,然后margin:0220px0 200px;

6、main 正确展示。

HTML 代码:

CSS代码:

style>
		*{
			margin: 0;
			padding: 0;
		}
		body{
			min-width: 700px;
		}
		.header,.footer{
			border: 1px solid yellow;
			background:green;
			text-align: center;
		}
		.left,.main,.right{
			float: left;
			min-height: 130px;
		
		}
		.left{
			margin-left: -100%;
			left: -200px;
			width: 200px;
			background: red;
		}
		.right{
			margin-left: -220px;
			width: 220px;
			background: green;
			
		}
		.main{
			width: 100%;
			background: orange;
			
		}
		.main-inner{
			margin-left: 200px;
			margin-right: 220px;
			min-height: 130px;
			
		}
		.footer{
			clear: both;
		}
		</style>
	</head>

 接下来还是看一下效果~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1712675.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

catia、solidworks模型的缩放

使用功能 参考选择原点或顶点&#xff1b;如果选择的参考不一样效果不一样 选择面则 solidworks 放大2.5倍

什么是预训练模型

如果你要做一个计算机视觉的应用&#xff0c;相比于从头训练权重&#xff0c;或者说从随机初始化权重开始&#xff0c;如果你下载别人已经训练好网络结构的权重&#xff0c;通常能够进展得相当快&#xff0c;可以用这个作为预训练模型&#xff0c;然后转换到你感兴趣的任务上。…

数据结构复习指导之B树和B+树

目录 B树和B树 考纲内容 1.B树及其基本操作 1.1B树的查找 1.2B树的高度&#xff08;磁盘存取次数&#xff09; 1.3B树的插入 1.4B树的删除 2.B树的基本概念 B树和B树 考纲内容 考研大纲对 B树和 B树的要求各不相同&#xff0c;重点在于考查B树&#xff0c;不仅要求理解…

我觉得 “砍需求” 是程序员最牛逼的本领

在下认为&#xff0c;不会 “砍需求” 的程序员不是好程序员&#xff0c;工作经验越丰富的程序员&#xff0c;砍需求的本领一般就越高。即使现在我多了一个身份 —— 管理团队&#xff0c;我也会帮开发同学去跟产品砍需求。 没错&#xff0c;从管理者的角度&#xff0c;我希望…

7 步解决Android Studio模拟器切换中文输入

详细步骤传送地址&#xff1a;Android Studio 模拟器切换中文输入 目录 01 问题概述 02 模拟器的调试 01 问题概述 大家在使用Android Studio 软件进行项目演示时总会遇到一些输入框需要输入中文汉字的情况&#xff0c;由于AS自带的模拟器基本都是英文&#xff0c;这时就有同…

【网络原理】HTTPS详解

一.HTTPS的相关基本概念 HTTPS:由于HTTP协议内容都是按照文本的方式明文传输的. 这就导致在传输过程中出现一些被篡改的情况. 可能会出现运营商劫持,黑客入侵等不利影响, 因此就引入了HTTPS,其本质上就是在HTTP协议的基础上,引入了一个加密层SSM.什么是运营商劫持? 例如我们要…

UI线程和工作线程

引用&#xff1a;windows程序员面试指南 工作线程 只处理逻辑的线程&#xff0c;例如&#xff1a;启动一个线程&#xff0c;用来做一个复杂的计算&#xff0c;计算完成之后&#xff0c;此线程就自动退出&#xff0c;这种线程称为工作线程 UI线程 Windows应用程序一般由窗口…

CIM分级

定义 以建筑信息模型&#xff08;BIM&#xff09;、地理信息系统&#xff08;GIS&#xff09;、物联网&#xff08;IoT&#xff09;等技术为基础&#xff0c;整合城市地上地下、室内室外、历史现状未来多维多尺度信息模型数据和城市感知数据&#xff0c;构建起三维数字空间的城…

护网在即,请拿你走你的蓝队神器!~

前言 养兵千日用兵一时&#xff0c;护网已经临近了&#xff0c;你是不是还在考虑现场一系列可能发生的情况&#xff1f;提前找好工具,避免在甲方面前太尴尬? 你需要它&#xff01; 据我了解&#xff0c;去年国护的时候就已经有不少攻城狮在使用我们的蓝队应急响应工具箱&am…

设计模式——工厂三兄弟之工厂方法

1.业务需求 ​ 大家好&#xff0c;我是菠菜啊。在介绍这期工厂方法模式前&#xff0c;我们先来看看这样的需求&#xff1a;升级之前的计算器&#xff0c;增加对数和指数运算。&#xff08;看这篇文章前可以先回顾《设计模式——工厂三兄弟之简单工厂》这篇&#xff09; 2.初…

Comfyui导出图片的命名技巧,日期文件夹

种子序号命名&#xff1a;%KSampler.seed% 图片宽高序号命名&#xff1a;%Empty Latent Image.width%x%Empty Latent Image.height% 年月日&#xff1a;%date:yyyy-MM-dd% 时分秒&#xff1a;%date:hhmmss% 年月日种子序号&#xff1a;%date:yyyy-MM-dd%/%KSampler.seed%

「清新题精讲」CF260E - Dividing Kingdom

CF260E - Dividing Kingdom D e s c r i p t i o n \mathrm{Description} Description 给定 n n n 个点 ( x i , y i ) (x_i,y_i) (xi​,yi​) 和长度为 9 9 9 的数列 a a a&#xff0c;满足 ∑ i 1 n a i n \sum_{i1}^na_in ∑i1n​ai​n。通过 2 2 2 条平行于 x x …

Mac连接虚拟机(Linux系统)

1.确定虚拟机的IP地址 ifconfig //终端命令&#xff0c;查询ip地址 sudo apt install net-tools 安装完成后再次执行 ifconfig&#xff1a; 2.安装SSH&#xff08;加密远程登录协议&#xff09; (1).安装OpenSSH服务器软件包&#xff1a; sudo apt-get install openssh-ser…

leetCode.86. 分隔链表

leetCode.86. 分隔链表 题目思路&#xff1a; 代码 class Solution { public:ListNode* partition(ListNode* head, int x) {auto lh new ListNode(-1), rh new ListNode(-1);auto lt lh, rt rh;for(auto p head; p; p p->next ) {if(p->val < x) {lt lt->…

33 mid 55. 跳跃游戏

贪心算法&#xff1a; class Solution {public boolean canJump(int[] nums) {int leftBorder 0;for (int i 0; i <nums.length; i) {if(i<leftBorder){leftBorderMath.max(leftBorder,inums[i]);}if(leftBorder>nums.length-1){return true;}}return false;} }

精酿啤酒:品质与口感对啤酒消费趋势的影响

随着消费市场的不断变化&#xff0c;啤酒消费趋势也在发生着演变。在这个过程中&#xff0c;品质与口感成为了影响啤酒消费趋势的重要因素。对于Fendi club啤酒而言&#xff0c;其卓着的品质和与众不同的口感对啤酒消费趋势产生了深远的影响。 品质的提升是推动啤酒消费趋势发展…

fastadmin部署后JSHint报错,导致Config::getValueByName()无法获取到值

问题 解决方案 一、本地 在phpstorm中&#xff0c;依次点击【设置】-【JSHint】-【取消勾选Enable】-【应用】即可。

Neural Filters:深度模糊

Ps菜单&#xff1a;滤镜/Neural Filters/摄影/深度模糊 Neural Filters/PHOTOGRAPHY/Depth Blur 深度模糊 Depth Blur滤镜可以在图像中创建环境深度以提供前景或背景对象。 “深度模糊”滤镜利用 AI 技术&#xff0c;分析图像的深度信息&#xff0c;生成一个深度图&#xff0c;…

爬虫案例-亚马逊反爬分析-验证码突破(x-amz-captcha)

总体概览&#xff1a;核心主要是需要突破该网站的验证码&#xff0c;成功后会返回我们需要的参数后再去请求一个中间页&#xff08;类似在后台注册一个session&#xff09;&#xff0c;最后需要注意一下 IP 是不能随意切换的 主要难点&#xff1a; 1、梳理整体反爬流程 2、验证…

【JavaScript】ECMAS6(ES6)新特性概览(二):解构赋值、扩展与收集、class类全面解析

&#x1f525; 个人主页&#xff1a;空白诗 &#x1f525; 热门专栏&#xff1a;【JavaScript】 文章目录 &#x1f33f; 引言五、 Destructuring Assignment - 解构赋值&#xff0c;数据提取的艺术 &#x1f3a8;&#x1f4cc; 数组解构&#x1f4cc; 对象解构&#x1f4cc; 特…