一篇文章带你了解CSS对齐方式

开发 前端
本文基于Html基础,主要介绍了Html中对齐的方式,对于对齐中的标签做了详细的讲解,用丰富的案例 ,代码效果图的展示,帮助大家更好理解 。

[[350213]]

一、居中

1. 居中对齐元素

将块元素水平居中对齐(像<div>) , 使用 margin: auto;设置元素的宽度将阻止它伸展到容器的边缘。

然后元素将占用指定的宽度,剩下的空间将平分在两个边距之间:

这个div是居中的。

 

  1. .center { 
  2.     margin: auto; 
  3.     width: 50%; 
  4.     border: 3px solid green; 
  5.     padding: 10px; 

 

一篇文章带你了解CSS对齐方式

注意:如果没有设置宽度属性,则居中对齐没有效果 (或者设置到100%).

2. 居中对齐文本

将元素内部的文本居中, 使用text-align: center;

这些文本是居中的。

 

  1. .center { 
  2.     text-align: center; 
  3.     border: 3px solid green; 

 

一篇文章带你了解CSS对齐方式

3. 居中图片

居中图片, 使用 margin: auto; 并且设置为块级元素:

 

  1. img { 
  2.     display: block; 
  3.     margin: auto; 
  4.     width: 40%; 

 

一篇文章带你了解CSS对齐方式

二、左右

HTML代码:

  1. <html lang="en"
  2. <head> 
  3.   <meta charset="UTF-8"
  4.   <title>编程字典</title> 
  5.  
  6. </head> 
  7. <body> 
  8.  
  9.   <h2>右对齐</h2> 
  10.   <p>如何正确定位元素与位置属性的一个例子:</p> 
  11.  
  12.   <div class="right"
  13.     <p>在我年轻而脆弱的岁月里,父亲给了我一些我一直以来一直在思考的建议.</p> 
  14.   </div> 
  15.  
  16. </body> 
  17. </html> 

 

1. 左右对齐 - 使用 position

对齐元素的一种方法是使用 position: absolute;

在我年轻而脆弱的岁月里,父亲给了我一些我一直以来一直在思考的建议。

 

  1. .right { 
  2.     position: absolute
  3.     right: 0px; 
  4.     width: 300px; 
  5.     border: 3px solid #73AD21; 
  6.     padding: 10px; 

注意:

绝对定位元素从正常流中移除,并且可以重叠元素。

当使用 position对齐元素时, 总是定义 margin 和 padding 为 元素. 这是为了避免不同浏览器的视觉差异。

还有IE8和早期版本有一些问题, 当使用 position. 如果容器元素有一个指定的宽度 (例如: <div class="container">) , 并且没有设置!DOCTYPE, IE8 和早期版本将添加 17px 外边距到右边. 这似乎是一条为滚动条预留空间. 因此,总是声明 !DOCTYPE 当使用 position时:

  1. body { 
  2.     margin: 0; 
  3.     padding: 0; 
  4.  
  5. .container { 
  6.     position: relative
  7.     width: 100%; 
  8.  
  9. .right { 
  10.     position: absolute
  11.     right: 0px; 
  12.     width: 300px; 
  13.     background-color: #b0e0e6; 

2. 左右对齐 - 使用 float

对齐元素的另一种方法是使用 float 属性:

 

  1. .right { 
  2.     floatright
  3.     width: 300px; 
  4.     border: 3px solid #73AD21; 
  5.     padding: 10px; 

提示:

当将元素使用浮动对齐时,总是为body元素定义边距和填充。这是为了避免不同浏览器的视觉差异。

 

  1. body { 
  2.     margin: 0; 
  3.     padding: 0; 
  4.  
  5. .right { 
  6.     floatright
  7.     width: 300px; 
  8.     background-color: #b0e0e6; 

效果图:

 

一篇文章带你了解CSS对齐方式

三、垂直居中,水平居中

HTML代码:

  1. <html lang="en"
  2. <head> 
  3.   <meta charset="UTF-8"
  4.   <title>编程字典</title> 
  5.  
  6. </head> 
  7. <body> 
  8.  
  9.   <h2>居中</h2> 
  10.   <p>在这个实例中, 
  11.      我们使用定位和transform属性实现元素的水平和垂直居中:</p> 
  12.  
  13.   <div class="center"
  14.     <!-- <p>我是垂直居中的.</p> --> 
  15.     <p>我水平垂直居中.</p> 
  16.      
  17.   </div> 
  18.  
  19.   <p>注意: transform属性不支持IE8和更早的版本.</p> 
  20.  
  21. </body> 
  22. </html> 

 

一篇文章带你了解CSS对齐方式

1. 使用 padding

有许多方法来中心垂直CSS元素. 一个简单的解决方案是使用顶部和底部 padding:

 

  1. .center { 
  2.     padding: 70px 0; 
  3.     border: 3px solid green; 

水平和垂直居中, 使用 padding 和 text-align: center:

垂直居中

 

  1. .center { 
  2.     padding: 70px 0; 
  3.     border: 3px solid green; 
  4.     text-align: center; 

 

一篇文章带你了解CSS对齐方式

2. 使用 line-height

另一个技巧是使用 line-height 属性值等于 height 属性值.

 

  1. .center { 
  2.     line-height: 200px; 
  3.     height: 200px; 
  4.     border: 3px solid green; 
  5.     text-align: center; 
  6.  
  7. /* If the text has multiple lines, add the following: */ 
  8. .center p { 
  9.     line-height: 1.5; 
  10.     display: inline-block; 
  11.     vertical-align: middle; 

3. 使用 position & transform

如果padding和line-height不可选,第三种解决方案是使用定位和变换属性:

 

  1. .center { 
  2.     height: 200px; 
  3.     position: relative
  4.     border: 3px solid green; 
  5.  
  6. .center p { 
  7.     margin: 0; 
  8.     position: absolute
  9.     top: 50%; 
  10.     left: 50%; 
  11.     transform: translate(-50%, -50%); 

 

一篇文章带你了解CSS对齐方式

四、总结

本文基于Html基础,主要介绍了Html中对齐的方式,对于对齐中的标签做了详细的讲解,用丰富的案例 ,代码效果图的展示,帮助大家更好理解 。

最后,希望可以帮助大家更好的学习CSS3。

 

 

责任编辑:未丽燕 来源: 今日头条
相关推荐

2021-04-07 06:11:37

Css前端CSS定位知识

2021-01-25 05:39:54

Css前端Border

2021-05-31 09:30:36

Css前端CSS 特效

2020-11-17 11:10:21

CSS选择器HTML

2021-06-30 00:20:12

Hangfire.NET平台

2023-05-12 08:19:12

Netty程序框架

2021-05-20 09:02:59

CSS单位长度

2023-08-01 14:34:12

HTMLCSS

2023-06-28 15:04:59

CSSHTML

2022-03-04 09:31:41

CSS前端属性选择器

2022-02-15 09:31:43

透明度CSS

2020-12-18 05:40:37

CSS clearHtml

2020-11-27 08:51:29

CSSOpacity透明度

2021-06-04 09:56:01

JavaScript 前端switch

2021-02-02 18:39:05

JavaScript

2020-11-10 10:48:10

JavaScript属性对象

2021-01-29 18:41:16

JavaScript函数语法

2021-09-27 09:18:30

ListIterato接口方法

2021-05-18 08:30:42

JavaScript 前端JavaScript时

2021-03-09 14:04:01

JavaScriptCookie数据
点赞
收藏

51CTO技术栈公众号