繁体   English   中英

如何在div的内联链接之间平均分配空间?

[英]How do I distribute space evenly among inline links within a div?

我希望在链接之间平均分配空间,因此每个链接都占包含div的空间的1/3。 他们之所以在此div之内,是因为我想将其与横幅对齐,否则我不确定该如何做。

这是一个小提琴: https : //jsfiddle.net/yuy84gmq/13/

 .bruceBanner img { border: 2px solid black; height: 172px; width: 553px; display: block; margin: 0 auto; } .navLinks li { border: 1px solid black; display: inline; font-size: 25px; } #navBar { border: 1px solid black; width: 553px; margin: 0 auto; } 
 <div class="bruceBanner"> <a href="#"> <img border="0" alt="XYZ Banner" src="http://bit.ly/1QSpdbq" width="553" height="172"> </a> </div> <nav id="navBar"> <ul class="navLinks"> <li><a href='#'>About</a> </li> <li><a href='#'>Hours</a> </li> <li><a href='#'>Contact</a> </li> </ul> </nav> <!--#navBar--> 

使用flexbox并将justify-content设置justify-content space-betweenspace-around

  • space-between
    弹性物料均匀地分布在生产线上。 [...]

  • space-around
    伸缩项均匀地分布在行中,两端均留有一半大小的空间。 [...]

.navLinks {
  display: flex;
  justify-content: space-around;
}

 .bruceBanner img { border: 2px solid black; height: 172px; width: 553px; display: block; margin: 0 auto; } .navLinks li { border: 1px solid black; display: inline; font-size: 25px; } #navBar { border: 1px solid black; width: 553px; margin: 0 auto; } .navLinks { display: flex; padding: 0; justify-content: space-around; } 
 <div class="bruceBanner"> <a href="#"> <img border="0" alt="XYZ Banner" src="http://bit.ly/1QSpdbq" width="553" height="172"> </a> </div> <nav id="navBar"> <ul class="navLinks"> <li><a href='#'>About</a></li> <li><a href='#'>Hours</a></li> <li><a href='#'>Contact</a></li> </ul> </nav> 

我看到一个flexbox解决方案已经发布,所以我将发布table/table-cell解决方案。 这是一个简单但有效的方法,您不必担心浏览器的差异。

 .bruceBanner img { border: 2px solid black; height: 172px; width: 553px; display: block; margin: 0 auto; } #navBar { border: 1px solid black; width: 553px; margin: 0 auto; } /* set the container to act like a table */ .navLinks { display: table; table-layout: fixed; /* evenly space all elements */ /* remove default styling */ width: 100%; margin: 0; padding: 0; } .navLinks li { display: table-cell;/* set to a table-cell */ text-align: center; font-size: 25px; padding: 10px; } .navLinks a { border: 1px solid black; } 
 <div class="bruceBanner"> <a href="#"> <img border="0" alt="XYZ Banner" src="http://bit.ly/1QSpdbq" width="553" height="172"> </a> </div> <nav id="navBar"> <ul class="navLinks"> <li><a href='#'>About</a> </li> <li><a href='#'>Hours</a> </li> <li><a href='#'>Contact</a> </li> </ul> </nav> <!--#navBar--> 

试试这个代码
为我工作

.bruceBanner img {
  border: 2px solid black;
  height: 172px;
  width: 553px;
  display: block;
  margin: 0 auto;
}
.navLinks{
padding: 0px;
}
.navLinks li {
  border: 1px solid black;
  display: inline-block;
  font-size: 25px;
  width:32%;
}
#navBar {
  border: 1px solid black;
  width: 553px;
  margin: 0 auto;
}





 <div class="bruceBanner">
      <a href="#">
        <img border="0" alt="XYZ Banner" src="http://bit.ly/1QSpdbq" width="553" height="172">
      </a>
    </div>

    <nav id="navBar">
      <ul class="navLinks">
        <li><a href='#'>About</a>
        </li>
        <li><a href='#'>Hours</a>
        </li>
        <li><a href='#'>Contact</a>
        </li>
      </ul>
    </nav>

嗨xD

您的CSS:

.bruceBanner img {
  border: 2px solid black;

  height: 172px;
  width: 553px;
  display: block;
  margin: 0 auto;  /*After setting a width this will make object sit centrally within parent container. Auto sets left and right                                  margins equally. 0 denotes no top or bottom margin */

}


 .li1 { 
border: 1px solid black;
display:inline-block;
margin-right: 15%;
float: left;

} 
.li2 { 
border: 1px solid black;
display:inline-block;
margin-right: 17%;
margin-left: 20%;
}
.li3 { 
border: 1px solid black;
display:inline-block;
float: right;
margin-right: 8%;
}
/* Adjust left/right margin as appropriate */

#navBar {
  border: 1px solid black;
  width:553px;
  margin: 0 auto;
}

您的html:

<body>

  <div class="bruceBanner">
    <a href="#">
      <img border="0" alt="XYZ Banner" src="http://bit.ly/1QSpdbq" width="553" height="172">
    </a>
  </div>

<nav id="navBar">
  <ul class="navLinks">
   <li class="li1"><a href='#'>About</a></li>
   <li class="li2"><a href='#'>Hours</a></li>
   <li class="li3"><a href='#'>Contact</a></li>
  </ul>
</nav> <!--#navBar-->
</body>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM