HTML+CSS基础学习笔记(8)
一、水平居中设置——行内元素
如果设置元素为文本、图片等行内元素时,水平居中是通过给父元素设置text-align:center来实现的


二、水平居中设置
——定宽块状元素
#当被设置元素为块状元素时,使用text-align:center就不起作用,此时分两种情况:定宽块状元素与不定宽块状元素。
#定宽块状元素:块状元素的宽度width为固定值
#满足定宽和块状两个条件的元素是可以通过设置“左右margin值”为“auto”来实现居中
#块级元素的居中有两个条件,1:必须有宽度,2:左右margin为auto
margin:10px 5px; 表示对象与父容器的上下距离值都是10px,与左右的距离值都是5px。
margin:0 auto; 表示上下的距离值是0,而左右就是自动适应,也就是我们常说的自动居中。
margin:auto; 表示上下左右都自动适应。
未设置前:


设置后


——不定宽块状元素
不定宽块状元素:块状元素的宽度width不固定。
不定宽度的块状元素有三种方法居中:
1、加入table标签
(利用table标签的长度自适应性,即不定义其长度也不默认父元素body的长度,table其长度根据其内文本长度决定,因此可以看做一个定宽块元素,然后再利用定宽度块状居中的margin的方法,使其水平居中。)



2、设置display:line方法:与第一种类似,显示类型设为行内元素,使用text-align:center来实现居中效果。



3、设置position:relative和left:50%:利用相对定位的方式,将元素向左偏移50%,即达到居中的目的。
理解:假想ul层的父层(即下面例子中的div层)中间有条平分线将ul层的父层(div层)平均分为两份,ul层的css代码是将ul层的最左端与ul层的父层(div层)的平分线对齐;而li层的css代码则是将li层的平分线与ul层的最左端(也是div层的平分线)对齐,从而实现li层的居中。





三、垂直居中
两种情况:父元素高度确定的单行文本,父元素高度确定的多行文本。
#父元素高度确定的单行文本的竖直居中的方法是通过设置父元素的height和line-height高度一致来实现。(height:元素的高度,line-height:行高、行间距,指在文本中,行与行之间的基线间的距离)


#父元素高度确定的多行文本
方法一:
使用插入table(包括tbody、tr、td)标签,同时设置竖直居中的属性vertical-align:middle,在父元素设置此样式时,会对inline-block类型的子元素都有用


方法二:
在chrom、firefox、IE8以上的浏览器可以设置块级元素的display:table-tell(设置为表格单元),激活vertical-align属性,本方法兼容性较差


四、隐藏改变display类型
当元素(不论之前是什么类型元素,display:none除外)设置以下两个句子之一:
1、position:absolute
2、float:left或float:right
元素的display显示类型就会自动变为以display:inline-block(块状元素)的方式显示,然后就可以设置元素的width和height,且默认宽度不占满父元素




HTML+CSS基础学习笔记(8)的更多相关文章
- HTML&CSS基础学习笔记—创建列表
创建一张表格 很多时候我们需要在网页上展示一些数据,使用表格可以很好的来展示数据. 在HTML中<table>标签定义 表格. <table> </table> 添 ...
- HTML&CSS基础学习笔记1.16-单元格间距和表格主体
上一篇讲html学习笔记,讲过了合并单元格,那么今天就来介绍下如何控制单元格的间距,以及表格主体的相关知识. 单元格间距 在上个知识点的显示结果中你可能发现了,单元格与单元格之间有一小段空白.这是由& ...
- HTML&CSS基础学习笔记1.32-选择器是什么
选择器是什么 选择器是CSS样式为了定位页面上的任意元素的一种方法. 选择器主要分为:元素标签选择器.通用选择器.类选择器.ID选择器.属性选择器.组合选择器.伪类选择器.伪元素选择器. 先做个了解, ...
- HTML&CSS基础学习笔记1.31-像素和相对长度
像素和相对长度 之前的笔记中,我们提到过用属性width.height来设置图片的尺寸,它们的单元都是”px(像素)”.长度单位总结一下,目前比较常用到px(像素).em.% 百分比,要注意其实这三种 ...
- CSS基础学习笔记
一. CSS介绍 1. CSS概述:CSS(Cascading Style Sheets)指层叠样式表,极大提高了工作效率. 2. 基础语法: 属性大于1个之后,属性之间用分号隔开 如果大于1个单词, ...
- HTML&CSS基础学习笔记1.33-元素选择器
元素选择器 最常见的 CSS 选择器是元素选择器.换句话说,文档的元素就是最基本的选择器: p { text-indent:10px; color:blue; } 什么情况下使用元素选择器,一般我们这 ...
- HTML&CSS基础学习笔记1.30-颜色的表达
颜色的表述 在网页中的颜色设置是非常重要,CSS的属性有字体颜色(color).背景颜色(background-color).边框颜色(border)等,设置颜色的方法也有很多种: 1.英文命令颜色 ...
- HTML&CSS基础学习笔记1.29-灵活地使用样式
灵活的使用样式 使用样式的感觉很棒吧! 刚我们使用的内联样式是给具体的标签加上样式,如果有多个标签的时候,我们用内联样式给标签加样式的时候就需要一个个的加过来,这样就很麻烦. 而如果我们使用内部样式表 ...
- HTML&CSS基础学习笔记1.28-给网页添加一个css样式
CSS是什么? 当HTML配合CSS一起使用时,我们发现页面变得好看了很多.那么CSS到底是什么呢? CSS指层叠样式表 (Cascading Style Sheets),它主要是用于定义HTML标签 ...
- HTML&CSS基础学习笔记1.26-input重置表单
重置表单 <input>的[type]属性值为"button"的时候表示一个普通的按钮,相当于一个<button>标签. <input>的[ty ...
随机推荐
- Android Gson使用笔记
最近在做一个java web service项目,需要用到jason,本人对java不是特别精通,于是开始搜索一些java平台的json类库. 发现了google的gson,因为之前对于protoco ...
- GCC优化选项-fomit-frame-pointer对于esp和ebp优化的作用
我的博客:www.while0.com -fomit-frame-pointer选项是发布产品时经常会用到的优化选项,它可以优化汇编函数中用edp协助获取堆栈中函数参数的部分,不使用edp,而是通过计 ...
- 转:十九、Java的接口及实例
http://blog.csdn.net/liujun13579/article/details/7736116 一.定义 Java接口(Interface),是一系列方法的声明,是一些方法特征的集合 ...
- bzoj2631 3282
这两题都是link cut tree的裸题之前看Qtree的论文,只会在确定父子关系的情况下连边和删边如果在任意两个点连边删边怎么做呢?这时候我们不能随意的将一个点的父节点设为另一个点,因为其中某个点 ...
- Makefile第四讲:include 引用其它makefile文件
main.cpp #include "classes/fun.h" int main() { Test::display("Hello makefile"); ...
- 基础算法(搜索):NOIP 2015 斗地主
Description 牛牛最近迷上了一种叫斗地主的扑克游戏.斗地主是一种使用黑桃.红心.梅花.方片的A到K加上大小王的共54张牌来进行的扑克牌游戏.在斗地主中,牌的大小关系根据牌的数码表示如下:3& ...
- 数学(数论)BZOJ 3309:DZY Loves Math
Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007)=1, f(1)=0. 给定正整数a,b, ...
- [转]NHibernate之旅(10):探索父子(一对多)关联查询
本节内容 关联查询引入 一对多关联查询 1.原生SQL关联查询 2.HQL关联查询 3.Criteria API关联查询 结语 关联查询引入 在NHibernate中提供了三种查询方式给我们选择:NH ...
- java基础(二十一)IO流(四)
这里有我之前上课总结的一些知识点以及代码大部分是老师讲的笔记 个人认为是非常好的,,也是比较经典的内容,真诚的希望这些对于那些想学习的人有所帮助! 由于代码是分模块的上传非常的不便.也比较多,讲的也是 ...
- Maven的安装与使用(ubuntu)
一.安装Maven 1.下载Maven,http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-m ...