“妄”眼欲穿之CSS 居中问题
CSS居中问题
1 text-align:center
文本居中问题(图片)
2 align-content
此属性只适用于多行的flex容器,并且当侧轴上有多余空间使flex线对齐
使用前提:flex布局;
任意布局:display:flex;
行内元素:display:inline-flex;
3 居中总结
3.1 水平居中
3.1.1行内元素居中(文本(text)、图片(img)、按钮等)
text-align:center;
3.1.2块状元素居中
- 定宽块状元素居中
满足宽度(块状元素的宽度width为固定值)和块状两个条件的元素可以通过左右margin值为auto来实现居中。
.div1{
width:200px;
border:1px solid red;
position: relative;
margin:0 auto;
}
<div class="div1">Hello world</div>
- 不定宽块状元素居中
在实际工作中我们会遇到需要为“不定宽度的块状元素”设置居中,比如网页上的分页导航,因为分页的数量是不确定的,所以我们不能通过设置宽度来限制它的弹性。(不定宽块状元素:块状元素的宽度width不固定。)
i. 改变块级元素的display为inline类型(设置为行内元素显示),然后使用text-align实现居中效果。
ii. 通过给父元素设置float,然后给父元素设置position:relative和left:50%,子元素设置position:relative和left:-50%来实现水平居中。
3.2 垂直居中
父元素高度确定的单行文本
通过设置父元素的height和line-height高度一致来实现的(height为元素的高度,line-height为行高,指在文本中,行与行之间的基线间的距离)。
父元素高度确定的多行文本
使用插入table(包括body、tr、td)标签,同时设置vertical-align:middle。
3.3 水平垂直居中
#login_box {
width: 300px;
height: 150px;
border: 1px solid #ccc;
position: absolute;
left: 50%;top: 50%;
margin-left: -150px;
margin-top: -75px;
}
这几行在#login_box中的目的是使其在浏览器中水平居中显示。(无论浏览器被如何拉伸,该login_box始终保持居中)
原理(对齐浏览器的中心点与#login_box的中心点,这样就使得.foot在浏览器中水平居中了):
left:50%; 使#login_box左边框距离浏览器左边50% ,所以login_box整体并不是位于浏览器中间,
需要使用margin-left: -150px; 使#login_box向左移动150像素(即login_box自身宽度的一半)。这样box整体就位于浏览器中间了。
top: 50%; margin-top: -75px 的道理同上。
“妄”眼欲穿之CSS 居中问题的更多相关文章
- “妄”眼欲穿-CSS之flex布局和边框阴影
妄:狂妄: 不会的东西只有怀着一颗狂妄的心,假装能把它看穿吧. 作为一个什么都不会的小白,为了学习(zb),特别在拿来主义之后写一些对于某些css布局的总结,进一步加深对知识的记忆.知识是人类的共同财 ...
- CSS居中demo
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&q ...
- css居中那点事儿
css居中那点事儿 在css中对元素进行水平居中是非常简单的,然而使元素垂直居中就不是一件简单的事情了,多年以来,垂直居中已经成为了CSS领域的圣杯,因为它是极其常见的需求,但是在实践中却不是一件简单 ...
- css居中学习笔记
css居中学习笔记 一.水平居中 以下面的代码为例: <body> <div class="parent"> <div class="chi ...
- CSS居中完全解决方案
上次面试面试官问到了,问了个定宽局中和不定宽局中,下来我把所有有关CSS居中都总结了一下 原文摘自我的前端博客,欢迎大家来访问 http://www.hacke2.cn 水平居中 行内元素 把行内元素 ...
- 理解CSS居中
我想很多在前端学习或者开发过程中,肯定会遇到如何让你的元素居中的问题,网上google肯定会有很多的解决方法.今天我就个人的项目与学习经验谈谈个人理解css如何让元素居中. 要理解css的居中,首先必 ...
- CSS 居中大全【转】
我看最近微博流行 CSS 居中技术,老外码农争相写相关的文章,一篇赛一篇的长啊,我把几篇归纳总结了一下,算是笔记. 孔乙己曾说:“茴香豆的回字有四种写法”,万一哪天有个面试官问你:“居中一共有几种写法 ...
- CSS居中的实现用法实例
转载的一篇文章,讲解css内容居中的. 网上有关css 居中的文章不胜枚举,不过大多没有做系统的总结.这里分享的这篇有关css居中的文章,个人感觉不错,值得收藏. 一.水平居中1,将元素水平居中(us ...
- 各种div+css居中方式调整(转载)
盘点8种CSS实现垂直居中水平居中的绝对定位居中技术 分类: 前端开发2013-09-11 21:06 24959人阅读 评论(3) 收藏 举报 绝对居中垂直居中水平居中CSS居中代码 目录(?) ...
随机推荐
- 2019.04.26 mongaodb
打开服务 mongod.exe --dbpath E:\Develop\mongodb_64\data\db 在安装和打开服务之前要建一个db 文件的存储位置 然后打开服务 打开服务之后 打开图 ...
- encodeURIComponent 和 decodeURIComponent 对字符串url编码 用于url拼字符传值
- React browserHistory.push()传参
1.browserHistory.push({ "pathname":'/interface_log', state: ...
- 使用TCP通信文件上传
客服端读取本地文件,吧文件上传到服务器,服务器在吧上传的文件保存到服务器硬盘上方法分析1:客户端使用本地字节输入流读取要上传的文件 2:客户端使用网络字节输出流,吧读取到的文件上传到服务器 3:服务器 ...
- Oracle VM Virtual 安装 ubuntu 后设置全屏
按照正常流程在vm中安装了ubuntu之后,发现ubuntu系统无法全屏显示,解决途径如下: 1.在vm中点击设置 2.选择“安装增强功能” 3.正常情况下,我们可以在桌面看到一个光盘图标(文件名:V ...
- 对接 第三方物流APP 手机版
昨天因为bibi项目要对接 物流信息 开始找了快递鸟文档,但是要填写申请APP,必须要注册公司才可以,这样非常麻烦.下面的第三方物理接口,绝对让你满意. https://m.kuaidi100.com ...
- Unity 让物体朝摄像机观察方向移动,已摇杆方向转向
using System.Collections;using System.Collections.Generic;using UnityEngine; [RequireComponent(typeo ...
- qemu创建vm和vcpu进入kvm的流程
kvm是一个内核模块,它实现了一个/dev/kvm的字符设备来与用户进行交互,通过调用一系列ioctl函数可以实现qemu和kvm之间的切换. 1.qemu发起KVM_CREATE_VM的ioctl创 ...
- kubernetes 源码安装部署 1.12
一. 前期准备 参考文档 https://jimmysong.io/kubernetes-handbook/practice/create-tls-and-secret-key.html 1. 安装g ...
- java线程学习之wait方法
wait 等待方法是让线程进入等待队列,使用方法是 obj.wait(); 这样当前线程就会暂停运行,并且进入obj的等待队列中,称作“线程正在obj上等待”. 如果线程想执行 wait 方法,线程必 ...