0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CSS对齐方式的详细讲解

电子设计 来源:电子设计 作者:电子设计 2020-12-24 15:38 次阅读

一、居中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。

审核编辑:符乾江
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • HTML
    +关注

    关注

    0

    文章

    278

    浏览量

    35340
  • CSS
    CSS
    +关注

    关注

    0

    文章

    109

    浏览量

    14374
收藏 人收藏

    评论

    相关推荐

    KiCad的对齐工具不好用?

    “  不存在的。唯一的原因是您还没有学会怎么用。   ” 对齐命令在哪里? KiCad的对齐命令(Align)藏得比较隐蔽,既不在菜单栏,也不在工具栏。右键的菜单中默认也不存在。只有当您 选中两个或
    的头像 发表于 12-04 18:15 146次阅读
    KiCad的<b class='flag-5'>对齐</b>工具不好用?

    芯片封装工艺详细讲解

    芯片封装工艺详细讲解
    发表于 11-29 14:02 1次下载

    Tailwind CSS v4.0发布首个Beta版本

    Tailwind CSS 是一个为快速开发而精心设计的原子类 CSS 框架,它提供了充满设计感和应用程序至上的能力来创建组件,它在最新的 2.0 版本中加入了暗黑模式,开箱即用。
    的头像 发表于 11-25 10:02 191次阅读
    Tailwind <b class='flag-5'>CSS</b> v4.0发布首个Beta版本

    ARM嵌入式系统中内存对齐的重要性

    做嵌入式系统软件开发,经常在代码中看到各种各样的对齐,很多时候我们都是知其然不知其所以然,知道要做好各种对齐,但是不明白为什么要对齐,不对齐会有哪些后果,这篇文章大概总结了内存
    的头像 发表于 11-11 17:17 851次阅读
    ARM嵌入式系统中内存<b class='flag-5'>对齐</b>的重要性

    电感技术的讲解

    详细讲解电感的原理及计算
    的头像 发表于 09-06 02:07 2168次阅读
    电感技术的<b class='flag-5'>讲解</b>

    第12章-ADC采集电压和显示 基于STM32的ADC—电压采集(详细讲解+HAL库)

    第12章-ADC采集电压和显示 基于STM32的ADC—电压采集(详细讲解+HAL库)
    的头像 发表于 08-21 16:31 2570次阅读
    第12章-ADC采集电压和显示 基于STM32的ADC—电压采集(<b class='flag-5'>详细</b><b class='flag-5'>讲解</b>+HAL库)

    鸿蒙ArkUI开发:【弹性布局(主轴&amp;交叉轴对齐方式)】

    通过justifyContent参数设置在主轴方向的对齐方式,和Row、Column的主轴对齐方式行为一样
    的头像 发表于 05-14 15:33 728次阅读
    鸿蒙ArkUI开发:【弹性布局(主轴&amp;交叉轴<b class='flag-5'>对齐</b><b class='flag-5'>方式</b>)】

    HarmonyOS开发ArkUI案例:【常用布局容器对齐方式

    基于ArkTS扩展的声明式开发范式,实现Flex、Column、Row和Stack四种常用布局容器对齐方式
    的头像 发表于 05-08 16:47 1589次阅读
    HarmonyOS开发ArkUI案例:【常用布局容器<b class='flag-5'>对齐</b><b class='flag-5'>方式</b>】

    Arm新Arm Neoverse计算子系统(CSS):Arm Neoverse CSS V3和Arm Neoverse CSS N3

    Arm宣布了两款新的Arm Neoverse计算子系统(CSS),它们基于“迄今为止最好的一代Neoverse技术”。是什么让这些新产品在拥挤的计算技术领域脱颖而出? Arm的两个新Arm
    的头像 发表于 04-24 17:53 1070次阅读
    Arm新Arm Neoverse计算子系统(<b class='flag-5'>CSS</b>):Arm Neoverse <b class='flag-5'>CSS</b> V3和Arm Neoverse <b class='flag-5'>CSS</b> N3

    求助,关于STM32H7的Cache无效化操作32字节对齐问题求解

    ;DCCIMVAC寄存器仅31-5位是有效的,本身已经强制32位对齐了?我在编程手册上也没找到对DCCIMVAC寄存器的详细描述,请问调用该函数是不是可以直接传入地址和数据了,不需要再对地址和数据进行32位对齐了?
    发表于 03-29 06:51

    TC277如何指定该全局数组变量的存储地址的对齐方式

    定义全局数组变量,如何指定该全局数组变量的存储地址的对齐方式
    发表于 02-19 07:37

    PSoC Creator有没有内存对齐方式的设置?

    使用PSoC4开发的时候发现ROM不够了,想做下优化,PSoC Creator有没有内存对齐方式的设置,比如说把对齐方式从4Byte改为2Byte?
    发表于 02-18 08:03

    请问PWM波输出方式中的边沿对齐与中心对齐有什么区别呢?

    请问PWM波输出方式中的边沿对齐与中心对齐有什么区别呢?对于PMSM FOC应该使用那种对齐方式呢?为什么呢?
    发表于 02-05 06:06

    详细讲解Altium Designer 23的安装教程

    在PCB设计中,软件的安装是我们迈出的第一步,接下来将详细讲解Altium Designer 23安装教程。
    的头像 发表于 01-09 10:02 9202次阅读
    <b class='flag-5'>详细</b><b class='flag-5'>讲解</b>Altium Designer 23的安装教程

    keil arm工程中结构体1字节对齐如何实现

    在Keil Arm工程中,结构体的对齐方式可以通过使用特定的编译器指令或者关键字来实现。结构体的对齐方式会直接影响结构体变量在内存中的布局和对齐
    的头像 发表于 01-05 14:40 3811次阅读