当前位置: 首页 > 面试题库 >

如何在指定容器上均匀且完全拉伸固定数量的水平导航项

尚河
2023-03-14
问题内容

我想在900像素的容器中均匀地拉伸6个导航项目,并且在两者之间留有均匀的空白。例如…

---| 900px Container |---

---| HOME    ABOUT    BASIC SERVICES    SPECIALTY SERVICES    OUR STAFF    CONTACT US |---

目前,我能找到的最佳方法是:

nav ul {
  width: 900px; 
  margin: 0 auto;
}

nav li {
  line-height: 87px;
  float: left;
  text-align: center;
  width: 150px;
}

与此相关的问题有两个。首先,它并不能真正证明其合理性,而是将li标签均匀地分布在整个ul标签中。在“ HOME”或“ ABOUT”等较小菜单项与“
BASIC SERVICES”等较大菜单项之间创建不均匀的空白。

第二个问题是,如果导航项大于150px(特殊服务就是该布局),则布局会中断,即使整个导航有足够的空间也是如此。

谁能为我解决这个问题?我一直在网上寻找解决方案,但它们似乎都不够用。CSS / HTML仅在可能的情况下…

谢谢!

更新(13/7/29 /):使用表格单元是实现此布局的最佳现代方法。请参阅下面的felix答案。该table cell属性当前可用于94%的浏览器。您必须对IE7及以下版本进行某些处理,否则应该没问题。

更新(13/30/13):不幸的是,如果您将此布局与MediaQueries结合使用,则会有一个Webkit错误会对此产生影响。现在,您必须避免更改’display’属性。

更新):现在有一个更好的解决方案,涉及text-align:justify。使用它比较简单,并且可以避免Webkit错误。


问题答案:

text-align:justify容器上使用,这样无论您列表中有多少个元素,它都将起作用(您不必为每个列表项计算%宽度)

    #nav {

        text-align: justify;

        min-width: 500px;

    }

    #nav:after {

        content: '';

        display: inline-block;

        width: 100%;

    }

    #nav li {

        display: inline-block;

    }


<ul id="nav">

    <li><a href="#">HOME</a></li>

    <li><a href="#">ABOUT</a></li>

    <li><a href="#">BASIC SERVICES</a></li>

    <li><a href="#">OUR STAFF</a></li>

    <li><a href="#">CONTACT US</a></li>

</ul>


 类似资料:
  • 本文向大家介绍写出固定子容器在固定的父容器下水平垂直居中的布局相关面试题,主要包含被问及写出固定子容器在固定的父容器下水平垂直居中的布局时的应答技巧和注意事项,需要的朋友参考一下 1.父容器 position: relative,子元素 position: absolute;left: 50%;top: 50%;transform:translate3d(-50%,-50%,0). 2.父容器 d

  • 问题内容: 我的网页上有一个宽度固定的容器,其中包含用于登录的表单元素。在这些元素下方有一个提交按钮,忘记密码的链接等。 碰巧最后一个线元素需要的宽度比框提供的宽度少。如何均匀地传播它们?我不要 默认 | ABC | 将线居中 | ABC | 也不是桌子的布局 | A | B | C | 相反,我正在寻找实现的CSS方法: 那是: 在所有元素之间放置相等的空间 将整个内容居中,避免第一侧或最后侧

  • 我想要一个2x2的网格,里面有一个按钮。这只是ICS,所以我尝试使用新的GridLayout。 以下是我的布局的XML: 问题是,我的视图在每一行的拉伸并不均匀。这会在GridLayout的右侧产生大量额外空间。 我尝试设置布局重力,但这只适用于行上的最后一个视图。这意味着单元格1会一直延伸,为单元格0提供足够的空间。 如何解决这个问题?

  • 问题内容: 我目前正在尝试在用户在X轴上滚动时修复表格中的第一列。我正在使用此结构: 用户将选择项目的数量,即表中可能是90个项目。这将需要在X轴上滚动。我得到的问题是: 如何确定(和中的)标记的位置? 我一直在看其他一些线程,但是它们并没有真正解释我如何实现固定列,这使我很难理解代码的作用和应做的事情。 我还检查了人们将标题栏拆分到另一个表中的解决方案。这对我来说是不可能的,因为稍后我会将数据导

  • 问题内容: 我正在尝试将项目代码从OSCache迁移到EhCache。 我们不仅将OSCache用作二级Hibernate缓存提供程序,而且还用于存储其他性质不同的对象。他们都很高兴地共享同一个缓存实例,而不会由于不重叠的缓存键而发生任何冲突。 迈向EhCache的一大区别是每个区域都有其不同的缓存实例。这可能很好,因为它可以提高查找速度,因为不同性质的数据分别存在。不幸的是,这要付出惨重的代价。

  • 本文向大家介绍Fullpage.js固定导航栏-实现定位导航栏,包括了Fullpage.js固定导航栏-实现定位导航栏的使用技巧和注意事项,需要的朋友参考一下 FullPage.js 是一个简单而易于使用的插件,用来创建全屏滚动网站(也被称为单页网站)。除了可以创建全屏滚动效果以外,也可以给网站添加一些水平的滑块效果。能够自适应不同的屏幕尺寸,包括平板电脑和移动设备。 开始制作自己的个人简历啦,决