这里的初学者。出于某种原因,在我编码的网站上,未来的按钮在导航栏上没有水平对齐。我正在使用flexbox,但即使如此,它也没有像我希望的那样对齐它们。代码中似乎也没有任何问题。
.topPart {
position: fixed;
overflow: hidden;
top: 0;
margin: 0px 15px 30px 15px;
width: 1790
padding: 30px;
border: 2px solid #3cc851;
background-color: #1f1f1f;
}
.topButtons {
display: flex;
flex-flow: row wrap;
justify-content: space-around;
align-items: flex-center;
height: 15px;
width: auto;
padding: 15px;
background-color: #fff;
color: #1f1f1f;
}
.topButtons .rightButtons {
text-align: right;
margin: auto 2px auto 1500px;
}
.topButtons .leftButtons {
text-align: left;
margin: auto 2% auto 2%;
}
html prettyprint-override"> <div class="topPart">
<h2> Website name I don't want to share </h2> <p> Website slogan I don't want to share </p>
<!-- later, make it so that the boxes of text are lined up like how it looks in the code using css -->
<div class="topButtons">
<div class="leftButtons">
<a href="index.html" class="home">home<a>
<a href="" class="mssg">mssg board<a>
<a href="database.html" class="data">database<a>
<a href="roleplay.html" class="rp">rp<a>
</div>
<div class="rightButtons">
<a href="" class="dms">dms</a>
<a class="out">logout</a>
<a class="acc">acc</a>
</div>
</div>
</div>
右侧按钮似乎比左侧按钮低约5px。在这里我完全不知所措,我的代码中似乎没有任何错误导致这种情况。应该修复它的Flexbox标记也不会做任何事情,例如flex-direction:row
和
调整内容
。
它看起来像什么。
您可以定义show: flex;
,risage-Content: space-inter
,amie-Item: center;
在topPart类和相等的宽度内div
这个flex: 1 1自动;
css
我希望下面的片段将帮助你很多。
*,*:before,*:after{box-sizing: border-box;}
body{margin: 0; padding: 0}
.topPart {
position: fixed;
overflow: hidden;
top: 0;
padding: 30px 20px;
border-bottom: 2px solid #3cc851;
background-color: #fff;
width: 100%;
z-index: 100;
display: flex;
flex-flow: row wrap;
justify-content: space-between;
align-items: center;
}
.leftButtons {
flex: 1 1 auto;
text-align: left;
}
.centerButtons {
text-align: center;
flex: 1 1 auto;
}
.rightButtons {
text-align: right;
flex: 1 1 auto;
}
.centerButtons a, .rightButtons a{
display: inline-flex;
background-color: #ccc;
padding: 4px 5px;
text-decoration: none;
color: #444;
text-transform: capitalize;
}
<div class="topPart">
<div class="leftButtons">
<div>Website Name<br>Website slogan</div>
</div>
<div class="centerButtons">
<a href="index.html" class="home">home</a>
<a href="#" class="mssg">mssg board</a>
<a href="database.html" class="data">database</a>
<a href="roleplay.html" class="rp">rp</a>
</div>
<div class="rightButtons">
<a href="" class="dms">dms</a>
<a class="out">logout</a>
<a class="acc">acc</a>
</div>
</div>
这是由于“.leftButtons”和“.rightButtons”类上的“文本对齐”和“边距”的CSS属性造成的。您不需要使用这些属性,因为您正在使用“.topButtons”类上的“display:flex”。子类的水平和垂直对齐将通过“调整内容:间距和“对齐项目:居中“.topButtons”。
我已经删除了“.leftButtons”和“.rightButtons”类的CSS属性。更新了“调整内容:间距在“.topButtons”上,通过在元素之间留出相等的空间,使子类水平对齐。
我还对您的标记做了一些更正,我发现如下所述:(1)锚(/a)子“.leftButtons”的闭包标记丢失。(2) 在“.topPart”中宽度属性声明后缺少。还增加了宽度值“1790”的“px”。
请检查添加的代码。
.topPart {
position: fixed;
overflow: hidden;
top: 0;
margin: 0px 15px 30px 15px;
width: 1790px;
padding: 30px;
border: 2px solid #3cc851;
background-color: #1f1f1f;
}
.topButtons {
display: flex;
flex-flow: row wrap;
/* justify-content: space-around; [old code] */
justify-content: space-between;
align-items: center;
height: 15px;
width: auto;
padding: 15px;
background-color: #fff;
color: #1f1f1f;
}
/*---- [old code]----*/
.topButtons .rightButtons {
/*text-align: right;
margin: auto 2px auto 1500px;*/
}
.topButtons .leftButtons {
/*text-align: left;
margin: auto 2% auto 2%;*/
}
<div class="topPart">
<h2> The Blood Tundra Kingdom </h2>
<p> - never talk about the blood tundra kingdom </p>
<!-- later, make it so that the boxes of text are lined up like how it looks in the code using css -->
<div class="topButtons">
<div class="leftButtons">
<a href="index.html" class="home">home</a>
<a href="" class="mssg">mssg board</a>
<a href="database.html" class="data">database</a>
<a href="roleplay.html" class="rp">rp</a>
</div>
<div class="rightButtons">
<a href="" class="dms">dms</a>
<a class="out">logout</a>
<a class="acc">acc</a>
</div>
</div>
</div>
div是一个块元素,因此保持auto的宽度基本上是向下推动第二个div的可用空间的100%。
尝试inline-flex或使宽度成为一个设定的数量,而不是自动
是否有一种方法可以以这种方式对齐子项:[i][i]_______[i][i][i],而不管每个组中有多少项?
问题内容: 由于某些原因,我的div不会在包含div的水平居中: 有时有一个行div,其中只有一个块div。我究竟做错了什么? 问题答案: 要实现您想要做的事情: 考虑使用代替。
问题内容: 我有一个容器div,其中有一个固定的,并带有。 我想要水平行的float:此容器内的div左。左浮动的Divs在读取其父级的右边界后自然会推到下面的“行”上。即使父级的不允许这样做,也会发生这种情况。这是这样的样子: ![错误] [1]- 删除了已被广告替换的图片棚屋图片 我希望它看起来如何: ![右] [2]- 删除了已被广告替换的图片棚屋图片 注意:我想要的效果可以通过使用内联元素
text-align-last属性用于定义块级容器中,行内元素的最后一行内容的水平对齐方式,可选值有 auto | left | center | right | justify | start | end | start | end,默认值为 auto。 除 auto外,其它取值与 text-align 属性取值的含义相同。auto 表示使用 text-align 的设定(例外情况,text-a
在一个块级容器中,当一行中的行内级框的总宽度,小于容器的宽度时,通过 text-align属性来指定这些行内级框在行中的水平分布。 事实上,text-align属性是通过指定行框与哪个点对齐,来决定行内级框在行中如何进行水平分布。可选值有 left | center | right | justify | start | end,默认值为start。不同取值的含义见表 3‑3: 表 3-3 tex
问题内容: 我需要将两个div彼此对齐,以便每个都包含一个标题和一个项目列表,类似于: 使用表非常容易,但是我不想使用表。我该如何实现? 问题答案: 将div浮动到父容器中,并设置其样式如下: