Html CSS错误:为什么不';页眉是否水平对齐,页脚是否均匀对齐?

Html CSS错误:为什么不';页眉是否水平对齐,页脚是否均匀对齐?,html,css,alignment,Html,Css,Alignment,我是一个编码新手-使用CSS flex box创建模拟响应布局,在最宽的视口中水平对齐页眉元素,并将页脚均匀地调整到空间时遇到问题 对于标题,我尝试了display:inline和text align:center,但没有成功。对于页脚,我尝试了display:flex和justify content:space:qualified,但也没有成功 <html> <body> <header> <div class="logo">

我是一个编码新手-使用CSS flex box创建模拟响应布局,在最宽的视口中水平对齐页眉元素,并将页脚均匀地调整到空间时遇到问题

对于标题,我尝试了
display:inline
text align:center
,但没有成功。对于页脚,我尝试了
display:flex
justify content:space:qualified
,但也没有成功

<html>
 <body>
  <header>
    <div class="logo">
       <h1>actual image logo here</h1>
       <h1>The ABC Company</h1>
    </div>
    </header>
  <footer>
    <ul class="social">
      <li class="social_icon">Twitter Logo here</li>
      <li class="social_icon">Facebook logo here</i></li>
      <li class="social_icon">Insta logo here</li>
    </ul>
  </footer>
 </body>
</html>

实际图像标志在这里
ABC公司
    这里有Twitter徽标 这里有Facebook徽标
  • 此处为Insta徽标
如果您愿意使用flexbox,则必须在标题上添加
display:flex
。然后用
justify content:center
将其水平居中。 在页脚中,您必须实际将
display:flex
添加到您的页脚中,因为您希望均匀定位的是子项

如果您愿意使用flexbox,则必须在标题上添加
display:flex
。然后用
justify content:center
将其水平居中。 在页脚中,您必须实际将
display:flex
添加到您的页脚中,因为您希望均匀定位的是子项


如果页眉和页脚占屏幕宽度的100%,则执行以下操作:

header,footer {
    width:100%
}
然后,要将任何元素居中对齐,最简单的方法就是像您所想的那样使用flex box

header {
     background: #aaf;
     display: flex;
     justify-content: center;
   }

footer {
     background: #aff;
     display: flex;
     justify-content: center;
    }

header div.logo {
       display: flex;
       justify-content: center;
    }

footer ul.social {
      width : 100%;
      list-style: none;
      display: flex;
      justify-content: space-evenly;
    }
由于页眉和页脚各有一个子项(页眉有一个div,页脚有一个ul),因此您需要再次使用flex将这些子项(h1和li)的内容居中放置。
为了使
空间均匀
ul
上工作,我必须增加其默认宽度,否则它似乎
适合内容
并且看起来居中。
如果您还有问题,请随时发表评论。

正文{
背景:rgb(36,36,33);
保证金:0;
填充:0;
高度:100vh;
}
标题,
页脚{
宽度:100%
}
标题{
背景:#aaf;
显示器:flex;
证明内容:中心;
}
页脚{
背景:#aff ;;
显示器:flex;
证明内容:中心;
}
标题分区标志{
显示器:flex;
证明内容:中心;
}
标题div.logo>*{
填充:0 10px;
}
页脚ul.social{
宽度:100%;
列表样式:无;
显示器:flex;
对正内容:空间均匀;
}

实际图像标志在这里
ABC公司
    这里有Twitter徽标 这里有Facebook徽标
  • 此处为Insta徽标

如果页眉和页脚占屏幕宽度的100%,则执行以下操作:

header,footer {
    width:100%
}
然后,要将任何元素居中对齐,最简单的方法就是像您所想的那样使用flex box

header {
     background: #aaf;
     display: flex;
     justify-content: center;
   }

footer {
     background: #aff;
     display: flex;
     justify-content: center;
    }

header div.logo {
       display: flex;
       justify-content: center;
    }

footer ul.social {
      width : 100%;
      list-style: none;
      display: flex;
      justify-content: space-evenly;
    }
由于页眉和页脚各有一个子项(页眉有一个div,页脚有一个ul),因此您需要再次使用flex将这些子项(h1和li)的内容居中放置。
为了使
空间均匀
ul
上工作,我必须增加其默认宽度,否则它似乎
适合内容
并且看起来居中。
如果您还有问题,请随时发表评论。

正文{
背景:rgb(36,36,33);
保证金:0;
填充:0;
高度:100vh;
}
标题,
页脚{
宽度:100%
}
标题{
背景:#aaf;
显示器:flex;
证明内容:中心;
}
页脚{
背景:#aff ;;
显示器:flex;
证明内容:中心;
}
标题分区标志{
显示器:flex;
证明内容:中心;
}
标题div.logo>*{
填充:0 10px;
}
页脚ul.social{
宽度:100%;
列表样式:无;
显示器:flex;
对正内容:空间均匀;
}

实际图像标志在这里
ABC公司
    这里有Twitter徽标 这里有Facebook徽标
  • 此处为Insta徽标

尝试以下方法:

header {
    text-align: center;
}

.logo {
    display: inline-block;
}

.social {
    display: flex;
    justify-content: space-evenly;
}

试着这样做:

header {
    text-align: center;
}

.logo {
    display: inline-block;
}

.social {
    display: flex;
    justify-content: space-evenly;
}

显示代码,如果看不到问题,很难说出什么是错误的,可能使用codepen或JSFIDLE,或者在此处添加代码段,因此我们可以帮助您显示代码,如果不看到问题,很难说出什么是错误的,可能使用codepen或JSFIDLE,或者在此处添加代码段,因此,我们可以帮助您坚持使用一个
h1
标签的唯一原因是为了搜索引擎优化,但在HTML5世界中,搜索引擎不再关心:尽可能多地使用有意义且看起来不错的
h1
标签。谢谢。你是对的。似乎我被灌输了一个常见的错误观念,坚持使用一个
h1
标签的唯一原因是为了搜索引擎优化,但在HTML5世界中,搜索引擎不再在意:使用尽可能多的
h1
s,只要有意义并且看起来不错。谢谢。你是对的。我似乎被灌输了一种常见的误解