CSS 如何将块元素居中对齐
在CSS中,可以使用margin属性将块元素(如div)水平居中。我们可以设置元素的宽度,从而防止容器拉伸。块元素占据整行空间,会强制其他元素占据下一行,因为块元素占据容器的100%。
将块元素居中对齐
在网页上,任何开始一个新行的元素都被视为块级元素,例如header标签、div等。
这些块级元素占据整个网页的宽度。比如说,我们在网页上有一个元素,占据了网页的10%,但如果它是一个块级元素,那么它将占据100%的宽度。
我们可以通过将display属性的值设置为block来改变特定元素的显示属性。
语法
让我们来看一下display属性的语法:
display: value;
上述是用于在网页上定义特定元素外观的display属性的语法。
margin属性
现在我们知道了块元素的行为,我们将使用margin属性来在水平平面上对齐元素。
margin属性将控制块元素的位置。我们将以这样的方式使用该属性,使得元素居中,因为margin可以在水平和垂直平面上控制元素。
语法
让我们来看看margin属性的语法 –
margin: value;
给出了margin属性的语法,并且margin应该从左右指定,以便将块级元素居中。auto值可用于设置margin,以便将块级元素自动对齐到中心。
注意 - 有一个text-align属性及其值center。此属性不能用于此方法,因为它用于居中非块级元素,如段落、span标签等。
示例
为了更好地理解该属性的功能,让我们看一个示例,在这个示例中,我们添加了一些标题和一个div元素,其margin在CSS属性部分被设置为auto,然后将它们与两个内联块一起居中。div的不同颜色告诉我们不同的显示方式,比如内联块和其他方式。
<!DOCTYPE html>
<html lang="en">
<head>
<title>Example of text alignment to the center</title>
<style>
*{
background-color:black;
}
.para {
color:white;
text-align: center;
}
.testinline {
padding: 10px;
border: 2px solid blue;
}
h1 {
font-size: 35px;
color: white;
width: fit-content;
margin: auto;
}
.container {
background-color: lightblue;
margin: auto;
border: solid red 1px;
padding: 15px 10px;
text-align: center;
width: fit-content;
}
.good-night {
padding: 10px;
border: 2px solid blue;
color: white;
display: inline-block;
}
.good-morning {
padding: 10px;
text-align: center;
color: white;
}
</style>
</head>
<body>
<h1>Hi, this an example</h1>
<p class="para">We are aligning the block elements to the text.</p>
<h1>Welcome</h1>
<div class="container">
How is your day Going
</div>
<div class="good-morning">
<div style="display: inline-block" class="testinline">
Good Morning
</div>
<div style="display: inline-block" class="testinline">
Good Night
</div>
</div>
</body>
</html>
从上面的输出中,您可以看到标题和div元素与段落标签居中对齐。我们使用 text-align 属性将段落标签居中对齐,并使用margin属性将块元素对齐,并将其值设置为auto。
示例
在下面的程序中,我们将使用一张图片和一个跟在图片后面的非块元素。然后,我们将图片的显示设置为块,并将其边距设置为auto,然后将其与标题一起居中对齐,并将段落的显示属性设置为inline-block。
<!DOCTYPE html>
<html lang="en">
<head>
<title>Example for text alignment </title>
<style>
h1 {
margin: auto;
width: 30%;
font-size: 24px;
margin-bottom: 8px;
background-color: black;
color: white;
}
.image{
display: block;
margin: auto;
}
</style>
</head>
<body>
<h1>
Example for setting the block element
</h1>
<img class="image" src="https://www.tutorialspoint.com/images/logo.png">
<p style="display: inline-block;">
Hi this is another example for aligning the block element to the centre.
</p>
</body>
</html>
在输出中,您可以看到图像位于中心,文本在下一行,正如我们所希望的。
结论
将块级元素居中对于创建平衡和对称的布局来说是一个很好的方法。通过使用text-align或者margin: auto的值,您可以快速而容易地对设计中的任意数量的元素进行对齐。通过一些实践,您将能够自信地使用这些技术!