当前位置:网站首页>一篇文章带你了解CSS对齐方式
一篇文章带你了解CSS对齐方式
2020-11-06 20:42:00 【Python进阶者】
一、居中
1. 居中对齐元素
将块元素水平居中对齐(像 <div>) , 使用 margin: auto;
设置元素的宽度将阻止它伸展到容器的边缘。
然后元素将占用指定的宽度,剩下的空间将平分在两个边距之间:
这个div是居中的。
.center {
margin: auto;
width: 50%;
border: 3px solid green;
padding: 10px;
}

注意:如果没有设置宽度属性,则居中对齐没有效果 (或者设置到100%).
2. 居中对齐文本
将元素内部的文本居中, 使用text-align: center;
这些文本是居中的。
.center {
text-align: center;
border: 3px solid green;
}

3. 居中图片
居中图片, 使用 margin: auto; 并且设置为块级元素:
img {
display: block;
margin: auto;
width: 40%;
}

二、左右
HTML代码:
<html lang="en">
<head>
<meta charset="UTF-8">
<title>编程字典</title>
</head>
<body>
<h2>右对齐</h2>
<p>如何正确定位元素与位置属性的一个例子:</p>
<div class="right">
<p>在我年轻而脆弱的岁月里,父亲给了我一些我一直以来一直在思考的建议.</p>
</div>
</body>
</html>
1. 左右对齐 - 使用 position
对齐元素的一种方法是使用 position: absolute;
在我年轻而脆弱的岁月里,父亲给了我一些我一直以来一直在思考的建议。
.right {
position: absolute;
right: 0px;
width: 300px;
border: 3px solid #73AD21;
padding: 10px;
}
注意:
绝对定位元素从正常流中移除,并且可以重叠元素。
当使用 position对齐元素时, 总是定义 margin 和 padding 为 <body> 元素. 这是为了避免不同浏览器的视觉差异。
还有IE8和早期版本有一些问题, 当使用 position. 如果容器元素有一个指定的宽度 (例如:<div class="container">) , 并且没有设置!DOCTYPE, IE8 和早期版本将添加 17px 外边距到右边. 这似乎是一条为滚动条预留空间. 因此,总是声明 !DOCTYPE 当使用 position时:
body {
margin: 0;
padding: 0;
}
.container {
position: relative;
width: 100%;
}
.right {
position: absolute;
right: 0px;
width: 300px;
background-color: #b0e0e6;
}
2. 左右对齐 - 使用 float
对齐元素的另一种方法是使用 float 属性:
.right {
float: right;
width: 300px;
border: 3px solid #73AD21;
padding: 10px;
}
提示:
当将元素使用浮动对齐时,总是为body元素定义边距和填充。这是为了避免不同浏览器的视觉差异。
body {
margin: 0;
padding: 0;
}
.right {
float: right;
width: 300px;
background-color: #b0e0e6;
}
效果图:

三、垂直居中,水平居中
HTML代码:
<html lang="en">
<head>
<meta charset="UTF-8">
<title>编程字典</title>
</head>
<body>
<h2>居中</h2>
<p>在这个实例中,
我们使用定位和transform属性实现元素的水平和垂直居中:</p>
<div class="center">
<!-- <p>我是垂直居中的.</p> -->
<p>我水平垂直居中.</p>
</div>
<p>注意: transform属性不支持IE8和更早的版本.</p>
</body>
</html>

1. 使用 padding
有许多方法来中心垂直CSS元素. 一个简单的解决方案是使用顶部和底部 padding:
.center {
padding: 70px 0;
border: 3px solid green;
}
水平和垂直居中, 使用 padding 和 text-align: center:
垂直居中
.center {
padding: 70px 0;
border: 3px solid green;
text-align: center;
}

2. 使用 line-height
另一个技巧是使用 line-height 属性值等于 height 属性值.
.center {
line-height: 200px;
height: 200px;
border: 3px solid green;
text-align: center;
}
/* If the text has multiple lines, add the following: */
.center p {
line-height: 1.5;
display: inline-block;
vertical-align: middle;
}
3. 使用 position & transform
如果padding和line-height不可选,第三种解决方案是使用定位和变换属性:
.center {
height: 200px;
position: relative;
border: 3px solid green;
}
.center p {
margin: 0;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

四、总结
本文基于Html基础,主要介绍了Html中对齐的方式,对于对齐中的标签做了详细的讲解,用丰富的案例 ,代码效果图的展示,帮助大家更好理解 。
最后,希望可以帮助大家更好的学习CSS3。
想学习更多Python网络爬虫与数据挖掘知识,可前往专业网站:http://pdcfighting.com/ 想学习更多Python网络爬虫与数据挖掘知识,可前往专业网站:http://pdcfighting.com/
版权声明
本文为[Python进阶者]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4521128/blog/4701572
边栏推荐
- Python crawler actual combat details: crawling home of pictures
- IPFS/Filecoin合法性:保护个人隐私不被泄露
- “颜值经济”的野望:华熙生物净利率六连降,收购案遭上交所问询
- In order to save money, I learned PHP in one day!
- Let the front-end siege division develop independently from the back-end: Mock.js
- Can't be asked again! Reentrantlock source code, drawing a look together!
- I've been rejected by the product manager. Why don't you know
- Cos start source code and creator
- Not long after graduation, he earned 20000 yuan from private work!
- xmppmini 專案詳解:一步一步從原理跟我學實用 xmpp 技術開發 4.字串解碼祕笈與訊息包
猜你喜欢

Do not understand UML class diagram? Take a look at this edition of rural love class diagram, a learn!

How long does it take you to work out an object-oriented programming interview question from Ali school?

数字城市响应相关国家政策大力发展数字孪生平台的建设

如何将数据变成资产?吸引数据科学家

Architecture article collection

人工智能学什么课程?它将替代人类工作?

Calculation script for time series data

多机器人行情共享解决方案

Filecoin最新动态 完成重大升级 已实现四大项目进展!

Character string and memory operation function in C language
随机推荐
Process analysis of Python authentication mechanism based on JWT
[performance optimization] Nani? Memory overflow again?! It's time to sum up the wave!!
Python + appium automatic operation wechat is enough
带你学习ES5中新增的方法
DTU连接经常遇到的问题有哪些
Deep understanding of common methods of JS array
10 easy to use automated testing tools
数字城市响应相关国家政策大力发展数字孪生平台的建设
Flink的DataSource三部曲之二:内置connector
Every day we say we need to do performance optimization. What are we optimizing?
Elasticsearch database | elasticsearch-7.5.0 application construction
基於MVC的RESTFul風格API實戰
How to encapsulate distributed locks more elegantly
Real time data synchronization scheme based on Flink SQL CDC
比特币一度突破14000美元,即将面临美国大选考验
Summary of common algorithms of linked list
制造和新的自动化技术是什么?
Don't go! Here is a note: picture and text to explain AQS, let's have a look at the source code of AQS (long text)
Network programming NiO: Bio and NiO
Classical dynamic programming: complete knapsack problem