常见的div布局面试题
题目1:如何让一个子元素在父元素里水平垂直居中?
方法1
.box{width:400px;height:400px;background:#ccc;position:relative;}
.child{width:50px;height:50px;position: absolute;left:50%;top:50%;margin-left:-25px;margin-top:-25px;background:red;}
<div class="box">
<div class="child"></div>
</div>
方法2:
.box{width:400px;height:400px;background:#ccc;position:relative;}
.child{width:50px;height:50px;margin:auto;overflow:auto;position: absolute;left:0;top:0;right:0;bottom:0;background:blue;}
<div class="box">
<div class="child"></div>
</div>
方法3:
.box{width:400px;height:400px;background:#ccc;position:relative;}
.child{width:50px;height:50px;margin:auto;position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);background:pink;}
<div class="box">
<div class="child"></div>
</div>
方法4:
.box{width:400px;height:400px;background:#ccc;display: table-cell;text-align: center;vertical-align: middle;}
.child{width:50px;height:50px;display:inline-block;background:red;}
<div class="box">
<div class="child"></div>
</div>
方法5:
.box{width:400px;height:400px;background:#ccc;display: flex;justify-content:center;align-items:center;}
.child{width:50px;height:50px;background:red;}
<div class="box">
<div class="child"></div>
</div>
题目2:高度已知,分为三栏,左右各300px,中间自适应?
方法1:浮动布局
.box>div{height:100px;}
.box .left{width:300px;background:red;}
.box .center{background:pink;}
.box .right{width:300px;background:blue;}
<div class="box">
<div class="left"></div>
<div class="right"></div>
<div class="center">中间栏:浮动布局</div>
</div>
方法2:定位布局
.box{position:relative;}
.box>div{height:100px;position:absolute;}
.box .left{left:0;top:0;width:300px;background:red;}
.box .center{left:300px;top:0;right:300px;background:pink;}
.box .right{top:0;right:0;width:300px;background:blue;}
<div class="box">
<div class="left"></div>
<div class="right"></div>
<div class="center">中间栏:定位布局</div>
</div>
方法3:flex布局
.box{display: flex;}
.box>div{height:100px;position:absolute;}
.box .left{width:300px;background:red;}
.box .center{flex:1;background:pink;}
.box .right{width:300px;background:blue;}
<div class="box">
<div class="left"></div>
<div class="right"></div>
<div class="center">中间栏:flex布局</div>
</div>
方法4:表格布局
.box{display: table; width:100%;}
.box>div{display: table-cell;height:100px;}
.box .left{width:300px;background:red;}
.box .center{background:pink;}
.box .right{width:300px;background:blue;}
<div class="box">
<div class="left"></div>
<div class="right"></div>
<div class="center">中间栏:table布局</div>
</div>
方法5:网格布局
.box{display: grid;grid-template-rows:100px;grid-template-columns:300px auto 300px;}
.box>div{height:100px;}
.box .left{background:red;}
.box .center{background:pink;}
.box .right{background:blue;}
<div class="box">
<div class="left"></div>
<div class="right"></div>
<div class="center">中间栏:grid布局</div>
</div>
本人正在不断地学习摸索中,如有错误,欢迎指正,如有不同的解题思路也欢迎指教~
常见的div布局面试题的更多相关文章
- 常见的div布局
1.一列固定宽度且居中 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- div 布局
转:http://blog.csdn.net/mercop/article/details/7882000 HTML CSS + DIV实现整体布局 1.技术目标: 开发符合W3C标准的Web页面 理 ...
- DIV布局之道一:DIV块的水平并排、垂直并排
DIV布局网页元素的方式主要有三种:平铺(并排).嵌套.覆盖(遮挡).本文先讲解平铺(并排)方式. 1.垂直平铺(垂直排列) 请看如下代码 CSS部分: CSS Code复制内容到剪贴板 .lay1{ ...
- CSS常见的五大布局
本文概要 本文将介绍如下几种常见的布局: 一.单列布局 常见的单列布局有两种: header,content 和 footer 等宽的单列布局 header 与 footer 等宽,content 略 ...
- 几种常见的CSS布局
本文概要 本文将介绍如下几种常见的布局: 其中实现三栏布局有多种方式,本文着重介绍圣杯布局和双飞翼布局.另外几种可以猛戳实现三栏布局的几种方法 一.单列布局 常见的单列布局有两种: header,co ...
- 10个常见的Node.js面试题
如果你希望找一份有关Node.js的工作,但又不知道从哪里入手评测自己对Node.js的掌握程度. 本文就为你罗列了10个常见的Node.js面试题,分别考察了Node.js编程相关的几个主要方面. ...
- 小div布局之卡片堆叠(card-stacking)
前端的页面布局和各种效果真是让人眼花缭乱,公司的设计师恨不得在一个网站上把前端的布局和样式效果都用一遍. 如何实现下面这种布局效果?我给这种布局效果起了个名字,叫做小div布局之卡片堆叠.然后我百度了 ...
- [MVC] DIV 布局
[MVC] DIV 布局 <style> .top { background-color: red; height: 50px; top: 0px; position: absolute; ...
- 【html】【8】div布局[子div在父div居底]
从今天起 开始细话div布局 思路及要点: 父div的位置设置成相对的,即“position: relative;”. 而子div的位置设置成绝对的,并且下边缘设为0,即“position: ab ...
随机推荐
- curl的安装与使用
linux 下的curl扩展安装,记录一下(发现网上好多抄袭的也不检测一下能不能用) 1.下载curl安装包: https://curl.haxx.se/download.html 2.解压: 如 t ...
- 勤于思考:jQuery Validation 在IE7(兼容模式)下出现“找不到成员”的脚本错误
今天在调试IE10下使用IE6判断脚本出现错误,处理后说IE7也不行,调试后则会出现以下错误: SCRIPT3: 找不到成员. jquery171.js, 行2582 字符4 其实开始我认为是jque ...
- 苹果手机app试玩赚钱平台汇总
注意: 微信扫码下载,绑定手机号和微信.才能提现 每天3点更新任务,4点最多! | 平台 | 提现额 | 任务量| 推荐强度 | 扫码 | 1.小鱼,10元,大量,强推! →点开扫码 2.天天飞燕,5 ...
- css 3d box 实现的一些注意事项
Test1.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- 「LOJ#6121」「网络流 24 题」孤岛营救问题(BFS
题目描述 1944 年,特种兵麦克接到国防部的命令,要求立即赶赴太平洋上的一个孤岛,营救被敌军俘虏的大兵瑞恩.瑞恩被关押在一个迷宫里,迷宫地形复杂,但幸好麦克得到了迷宫的地形图.迷宫的外形是一个长方形 ...
- ACM学习历程—HDU5269 ZYB loves Xor I(位运算 && dfs && 排序)(BestCoder Round #44 1002题)
Problem Description Memphis loves xor very musch.Now he gets an array A.The length of A is n.Now he ...
- 【LeetCode】027. Remove Element
题目: Given an array and a value, remove all instances of that value in place and return the new lengt ...
- 选中DataGrid的Cell而不是row
主要是针对DataGridCellsPresenter而不是SelectiveScrollingGrid,使用时DataGridRow应用这个style就可以了. <Style x:Key=&q ...
- TI官网常用链接
TMS320C6000系列DSP库dsplib下载 TMS320C6000系列DSP库imglib下载 TMS320C6000系列DSP库mathlib下载 TMS320C66657技术文档
- POJ3694(求割边)
Network Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 7943 Accepted: 2893 Descripti ...