【问题标题】:How to align items in HTML using Flexbox如何使用 Flexbox 对齐 HTML 中的项目
【发布时间】:2021-04-10 02:41:34
【问题描述】:

我希望我的项目按特定顺序放置,以便 title(带有版权段落的标题)位于页面中间的“关于”部分的中心,不会被填满我的页面的一半...我尝试使用 flex-basis 以便我可以为每个项目指定特定的宽度,但似乎没有用,有什么想法吗?这是页脚部分的代码,我对导航栏和页脚都有这个问题,但我想如果它适用于一个它通常会起作用 还有 PM :我不知道为什么大多数 html 代码不显示 sn-p ,这是它的外观图像https://imgur.com/4xXP36C

HTML 代码:

.flex {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  height: 100%;
}

.container {
  max-width: auto;
  margin: 0 auto;
  overflow: auto;
  padding: 0 40px;
  align-self: start;

}

.bg-dark,
.btn-dark {
  background-color: var(--dark-color);
  color: #fff;
}
.footer .box a{

  margin: 0 5px;
}
.lead {
  font-size: 20px;
}
.py-1 {
  padding: 1rem 0;
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">

<footer class="footer bg-dark ">
    <div class="container flex lead py-1">
       <div class="box">
           <h1>About</h1>
           <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Corporis voluptatum vel praesentium molestias consectetur ea consequuntur a quidem vitae iste?</p>
       </div> 
       <div class="box">
        <h1>CarolandHousing</h1>
        <p>Copyright &copy; 2021</p>
        </div>
        <div class="box">
            <nav>
                <ul>
                    <li><a href="index.html">Home</a></li>
                    <li><a href="features.html">Features</a></li>
                    <li><a href="docs.html">Docs</a></li>
                    <a href="#"><i class="fab fa-facebook fa-2x"></i></a>
                    <a href="#"><i class="fab fa-instagram fa-2x"></i></a>
                </ul>
            </nav>
        </div>
     </div>
</footer>

Working Domo

【问题讨论】:

  • 很难理解你想要实现什么,带有一些块的图像会很棒
  • 我在问题中添加了一张图片,正如您在导航栏中看到的那样,标题没有以页面为中心,而在页脚中,关于部分与其余部分的可怕对齐方式太大了项目
  • @VlAdTbK:很抱歉这么说,但你没有正确地提出你的问题 :) 规格不明确 :)
  • 我想让事情看起来像你理解的那样,而不是像图像中那样(关于部分更小,标题居中等......)但感谢下面的答案,我设法做到了完成它...现在我还有一个问题imgur.com/VKn0LO0,如何使主页功能和文档文本在行中对齐,而图标保持在下方?
  • 有很多关于使用 flexbox 对齐项目的好文章和教程。这只是一个:css-tricks.com/snippets/css/a-guide-to-flexbox

标签: html css flexbox text-align


【解决方案1】:

请根据您的要求在下面找到更新的代码如下:-

  1. flex 中的所有三列都采用相同的宽度 (33%)
  2. 可选:链接删除列表样式并右对齐以获得更好的用户界面

.flex {
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  height: 100%;
}

.container {
  max-width: auto;
  margin: 0 auto;
  overflow: auto;
  padding: 0 40px;
  align-self: start;
  
}

.flex-basis-3{
  flex-basis: 33%
}

.text-center{
  text-align: center
}

.text-right{
  text-align: right
}

.no-list{
  list-style: none;
}

.bg-dark,
.btn-dark {
  background-color: var(--dark-color);
  color: #000;
}
.footer .box a{
  margin: 0;
}
.lead {
  font-size: 20px;
}
.py-1 {
  padding: 1rem 0;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css" rel="stylesheet"/>

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">

<footer class="footer bg-dark ">
    <div class="container-fluid flex lead py-1">
       <div class="box flex-basis-3">
           <h1>About</h1>
           <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Corporis voluptatum vel praesentium molestias consectetur ea consequuntur a quidem vitae iste?</p>
       </div> 
       <div class="box flex-basis-3 text-center">
        <h1>CarolandHousing</h1>
        <p>Copyright &copy; 2021</p>
        </div>
        <div class="box flex-basis-3 text-right">
            <div class="display: flex; justify-content: flex-end">
               <span><a href="index.html">Home</a></span>
               <span><a href="features.html">Features</a></span>
               <span><a href="docs.html">Docs</a></span>
            </div>
            <div>
              <a href="#"><i class="fab fa-facebook fa-2x"></i></a>
              <a href="#"><i class="fab fa-instagram fa-2x"></i></a>
            </div>
        </div>
     </div>
</footer>

【讨论】:

  • 是的,它需要的工作,但现在我有另一个关于如何对齐主页功能和文档的问题......如何在图标保持在它们下方时将它们对齐? imgur.com/VKn0LO0
  • 嘿@VlAdTbK,我已根据您的要求使用链接和对齐方式更新了代码
  • 是的,它适用于除 Home Features Docs 部分之外的所有对齐方式......我怎样才能让它们连续显示?我试过 flex-direction : row ;但似乎并没有按照我的意愿放置它们......有什么想法吗?
  • 嘿@VlAdTbK,我想更好地了解您的要求。您想在下面的 facebook 和 instagram 图标等列布局中显示导航链接(主页、功能和文档)?目前主页、功能和文档链接显示为行。
  • Aa 从我的 pov 和 sn-p 他们没有,他们在列 imgur.com/52OA2DN 我不知道为什么......然后如果你能帮助我另一个问题我会很感激,因为我现在很困惑
猜你喜欢
  • 2021-03-18
  • 2018-02-06
  • 2020-05-16
  • 1970-01-01
  • 2016-09-08
  • 2018-08-21
  • 2021-10-29
  • 2021-11-27
  • 2021-03-06
相关资源
最近更新 更多