Html 当父元素';s的位置是固定的
我正在创建一个导航面板,它在向下滚动时将保持固定。这是密码Html 当父元素';s的位置是固定的,html,css,Html,Css,我正在创建一个导航面板,它在向下滚动时将保持固定。这是密码 <header> <a class="logo" href="/">Logo_name</a> <nav> <a href="#">Menu_1</a> <a href="#">Menu_2</a> </nav> <div style="clear: both;
<header>
<a class="logo" href="/">Logo_name</a>
<nav>
<a href="#">Menu_1</a>
<a href="#">Menu_2</a>
</nav>
<div style="clear: both;"></div>
</header>
我想有右侧的标志和导航菜单在右侧
现在,浮动似乎有效,但导航元素出现在徽标的正后方,而不是浮动到右侧边缘
如果我从标题中删除position:fixed代码,则浮动似乎可以正常工作。这将是使用flexbox而不是浮动的解决方案:
标题{
宽度:100%;
最大宽度:960像素;
显示器:flex;
证明内容:之间的空间;
}
.标志{
自我校准:灵活启动;
}
导航{
自对准:柔性端;
}
正如@AngelMdez所提到的,Flexbox是一种比float更好的方式,
位置:fixed
应该同样有效;请记住,您应该指定一个宽度,以便元素本身使用预期的空间
之后,您可以删除所有float
和clear
属性,这样就可以了
正文{
保证金:0;
}
标题{
位置:固定;
宽度:100%;
最大宽度:960像素;
显示器:flex;
证明内容:之间的空间;
对齐项目:居中;
高度:70像素;
背景颜色:灰色;
}
.内容{
填充顶部:70px;
}
知识是一种美德,是一种美德,是一种美德,是一种美德。但是,在最低限度上,我们需要一个实验室来进行日常工作。二人世界
这是一种令人厌恶的行为,因为它是一种不平等的行为。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。
知识是一种美德,是一种美德,是一种美德,是一种美德。但是,在最低限度上,我们需要一个实验室来进行日常工作。二人世界
这是一种令人厌恶的行为,因为它是一种不平等的行为。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。
知识是一种美德,是一种美德,是一种美德,是一种美德。但是,在最低限度上,我们需要一个实验室来进行日常工作。二人世界
这是一种令人厌恶的行为,因为它是一种不平等的行为。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。
知识是一种美德,是一种美德,是一种美德,是一种美德。但是,在最低限度上,我们需要一个实验室来进行日常工作。二人世界
这是一种令人厌恶的行为,因为它是一种不平等的行为。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。
知识是一种美德,是一种美德,是一种美德,是一种美德。但是,在最低限度上,我们需要一个实验室来进行日常工作。二人世界
这是一种令人厌恶的行为,因为它是一种不平等的行为。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。
知识是一种美德,是一种美德,是一种美德,是一种美德。但是,在最低限度上,我们需要一个实验室来进行日常工作。二人世界
这是一种令人厌恶的行为,因为它是一种不平等的行为。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。
回答您的问题:大多数HTML元素都有名为用户代理的浏览器提供的默认样式。
具有display:block的默认display
值代码>。具有display:block
的元素相对于其容器增长到其最大宽度
在这种情况下,
的容器是
,它的宽度来自占据整个视口的
因为您已将max width
设置为960px
元素将仅增长到960px。这很好,因为宽度通常占据整个视口。但是,一旦设置了绝对位置(在本例中为“fixed”),元素就会从正常文档流中移除。因为它现在固定在一个固定的位置上。这意味着它没有具有宽度的父对象。因此,它失去了父对象(身体)继承的宽度
要解决您已经编写的代码的问题,只需在元素中添加一个宽度。因为您已经设置了最大宽度:960px
您可以通过以下命令将元素增长到100%:宽度:100%代码>。它将停止在960像素,因为这是它的最大宽度:
标题{
位置:固定;
宽度:100%;
背景:蓝色;
}
a{
颜色:白色;
}
.标志{
浮动:左;
}
导航{
浮动:对;
}
为什么不使用显示:内联块;我需要有一个静态标题面板的位置:固定。W位置固定后,即使使用flexbox,对齐也不起作用。事实上,当position:fixed被删除时,float会比flexbox更好地对齐它们。@mjustin除非您有其他影响元素的因素将“position:fixed;”添加到标题中,否则它应该可以工作
header {
position: fixed;
max-width:960px;
}
.logo {
float: left;
}
nav {
float: right;
}