题目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布局面试题的更多相关文章

  1. 常见的div布局

    1.一列固定宽度且居中 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  2. div 布局

    转:http://blog.csdn.net/mercop/article/details/7882000 HTML CSS + DIV实现整体布局 1.技术目标: 开发符合W3C标准的Web页面 理 ...

  3. DIV布局之道一:DIV块的水平并排、垂直并排

    DIV布局网页元素的方式主要有三种:平铺(并排).嵌套.覆盖(遮挡).本文先讲解平铺(并排)方式. 1.垂直平铺(垂直排列) 请看如下代码 CSS部分: CSS Code复制内容到剪贴板 .lay1{ ...

  4. CSS常见的五大布局

    本文概要 本文将介绍如下几种常见的布局: 一.单列布局 常见的单列布局有两种: header,content 和 footer 等宽的单列布局 header 与 footer 等宽,content 略 ...

  5. 几种常见的CSS布局

    本文概要 本文将介绍如下几种常见的布局: 其中实现三栏布局有多种方式,本文着重介绍圣杯布局和双飞翼布局.另外几种可以猛戳实现三栏布局的几种方法 一.单列布局 常见的单列布局有两种: header,co ...

  6. 10个常见的Node.js面试题

    如果你希望找一份有关Node.js的工作,但又不知道从哪里入手评测自己对Node.js的掌握程度. 本文就为你罗列了10个常见的Node.js面试题,分别考察了Node.js编程相关的几个主要方面. ...

  7. 小div布局之卡片堆叠(card-stacking)

    前端的页面布局和各种效果真是让人眼花缭乱,公司的设计师恨不得在一个网站上把前端的布局和样式效果都用一遍. 如何实现下面这种布局效果?我给这种布局效果起了个名字,叫做小div布局之卡片堆叠.然后我百度了 ...

  8. [MVC] DIV 布局

    [MVC] DIV 布局 <style> .top { background-color: red; height: 50px; top: 0px; position: absolute; ...

  9. 【html】【8】div布局[子div在父div居底]

    从今天起 开始细话div布局   思路及要点: 父div的位置设置成相对的,即“position: relative;”. 而子div的位置设置成绝对的,并且下边缘设为0,即“position: ab ...

随机推荐

  1. apace搭建站点

    Listen 127.0.0.1:3310<VirtualHost *:3306> ServerName 127.0.0.1:3306 DocumentRoot "F:/Baid ...

  2. ES忽略TF-IDF评分——使用constant_score

    Ignoring TF/IDF Sometimes we just don’t care about TF/IDF. All we want to know is that a certain wor ...

  3. u3d 多线程 网络

    开启一个线程做网络连接,和接收数据, 用event进行广播 using UnityEngine; using System; using System.Threading; using System. ...

  4. storm源码剖析(3):topology启动过程

    storm的topology启动过程是执行strom jar topology1.jar MAINCLASS ARG1 ARG2 鉴于前面已经分析了脚本的解析过程,现在重点分析topology1.ja ...

  5. bootstrap框架日期时间 开始日期和结束日期选择

    页面表单查询时,常要求要查询一个日期时间段内的数据,若采用bootstrap框架的datetimepicker插件来控制,需要了解怎么个用法:

  6. 「NOIP2016」「P1850」 换教室(期望dp

    题目描述 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程. 在可以选择的课程中,有 2n2n 节课程安排在 nn 个时间段上.在第 ii(1 \leq i \leq n1≤ ...

  7. [JSOI 2018] 潜入行动

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=5314 [算法] 考虑dp , 用f[i][j][0 / 1][0 / 1]表示以i为 ...

  8. WPF 后台触发 Validate UI‘s Element

    wpf中有validateRule类, 用于界面元素的验证, 如何后台去控制validateRule呢? 1. UI层要binding写好的ValidateRule,分为Binding和MultiBi ...

  9. Lagom学习 (二)

    以一个官方的例子,开启lagom的学习之旅. 1:   git clone https://github.com/lagom/activator-lagom-java-chirper.git. 2:  ...

  10. cat的用法总结

    1 查看文件在LINUX下一切皆文件,光看见文件名和目录名对我们来说,还远远不够.今天,就来介绍一下可以打开文件的命令cat.当然,二进制的可执行文件,不能用cat. 在CentOS7下,以/etc/ ...