【问题标题】:Nav inside Header, Position Fixed?导航在标题内,位置固定?
【发布时间】:2013-11-11 15:32:32
【问题描述】:

我有一个 100% 宽度的标题和一个 980 像素的导航内部标题

现在我想为标题和导航提供固定的位置。 我已经尝试使用以下代码,但无法得到我想要的 请帮帮我,

我的 header.css

width:100%;
height:60px;
background: #ffffff;
position:fixed;
z-index:999;`

还有我的 nav.css

background: #ffffff;
height: 60px;
text-align:center;
position:fixed;
z-index:99; 

.导航

margin:0;
padding:0;

.nav里

   display: inline-block;
   list-style-type: none;
   vertical-align:middle;`

.nav li a

font-size: 16px;
color: black;
display: block;
line-height: 60px;
padding: 0 10px;
text-decoration: none;

【问题讨论】:

  • 如果没有更多代码,例如您的 html,真的很难提供帮助。如果您可以在 codepen.io 或 jsfiddle.net 上重现您的布局,那将会有所帮助。也就是说,只有你的 header 应该有 position: fixed - nav 将保持不变,因为它嵌套在 header 内。
  • @ShawnErquhart 感谢您的回复,标题和导航部分的 html 或完整的布局 html?我不明白你能详细说明一下吗?
  • @Fastnto :如果你能提供一个小提琴,那就太好了..
  • 相关部分——只需要header和nav就足够了。
  • 我不知道哪里出了问题,但是我是如何把它放在小提琴中的 link 我知道这看起来很奇怪,请帮助我摆脱这种情况。

标签: css css-position


【解决方案1】:

如果导航在标题内,您不需要在 nav.css 中使用 position:fixed,您还应该删除 z-index。如果没有帮助,更清楚地描述问题和您正在使用的 html 会很有帮助。

【讨论】:

  • 感谢您的回复Position:fixed问题是否与ul li a标签的nav有任何链接??
  • 您只需要父元素上的position:fixed,在本例中为标题。 z-index 也不应该是必要的,删除它们,看看会发生什么。代码中的 ul li a 部分看起来不错,应该不会造成问题。
  • 可能你的回答很好,但是我的主页现在已经失去滚动条来检查标题部分,它有内容可以滚动但没有滚动条。
  • 我已经编辑了你的fiddle。我所做的只是删除nav 上的固定高度并添加一个.content div 来演示如何将内容定位在header 下方。我希望这会有所帮助。
  • 或使用@alexandre 解决方案,但将.contentmargin-top:80px; 更改为padding-top:80px;。我希望这会有所帮助。
【解决方案2】:

@Fastnto,你想要这样的东西吗?

http://jsfiddle.net/alexandrecanijo/NBp8F/

我更改了原始 CSS 的某些部分以显示标题 (#ccccccc) 和导航 (#000000),并添加了具有足够 lorem ipsum 的 .content 以便您能够看到导航。 但是,CSS 可能会在某些部分被清理和重构...没有更改来执行此操作...

希望这会有所帮助。

html,body, p {
    margin: 0;
    padding: 0;
    border: 0;
    font: 14px arial;
}
.header {
    width: 100%;
    height: 80px;
    background: #cccccc;
    position: fixed;
    z-index:999;
    margin: 0;
    clear: both;
    top: 0;
}

.nav {
    background: #000000;
    height: 60px;
    text-align:center;
    z-index:99;
}

.nav ul {
    margin:0;
    padding:0;
}

.nav li {
    float: left;
    list-style-type: none;
}
.nav li a {
    font-size: 16px;
    color: #fe6700;
    display: block;
    line-height: 60px;
    padding: 0 10px;
    text-decoration: none;
}
.nav li a:hover {
    color: #000000;
    background: #fe6700;
}
.content {
    margin-top: 80px;
}

【讨论】:

  • 嘿,谢谢你的回复@alexandre 你的小提琴对我来说看起来不错,但这并没有完全解决我的问题。它在我的标题上方大约有 600 像素的高度,我不知道它出错了。并且 position:fixed 滚动后向上没有影响。
  • 你能举个关于小提琴的例子来看看 HTML 和 CSS 吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-01
相关资源
最近更新 更多