Html 将粘性位置指定给网格中的侧栏
我正在为一个网站的布局编码,在这个布局中我使用了一个网格模板。我希望标题和左侧边栏是粘性的,我已经在标题上成功了。但是,侧边栏不会有粘性。我已经在这个论坛上查看了一些解决方案,因为我看到一些人提出了类似的问题,但它似乎不起作用 有些人提到过放“top:0”(我用标题做了这件事,它完全有效),但边栏没有。我得出的结论是,这是因为侧边栏在它为0之前不会粘住,因为它在开始时不是0 我发现的另一个解决方案是“位置:固定”这确实会使内容保持不变,但是设计不会停留在原来的位置 任何帮助都可以。另外谢谢Html 将粘性位置指定给网格中的侧栏,html,css,css-grid,Html,Css,Css Grid,我正在为一个网站的布局编码,在这个布局中我使用了一个网格模板。我希望标题和左侧边栏是粘性的,我已经在标题上成功了。但是,侧边栏不会有粘性。我已经在这个论坛上查看了一些解决方案,因为我看到一些人提出了类似的问题,但它似乎不起作用 有些人提到过放“top:0”(我用标题做了这件事,它完全有效),但边栏没有。我得出的结论是,这是因为侧边栏在它为0之前不会粘住,因为它在开始时不是0 我发现的另一个解决方案是“位置:固定”这确实会使内容保持不变,但是设计不会停留在原来的位置 任何帮助都可以。另外谢谢
<body>
<header>lorem ipsum.
<span class="navicon">☰</span></header>
<nav>
<ul>
<li>home</li>
<li>entries</li>
<li>about</li>
<li>contact</li>
</ul>
<img src="https://66.media.tumblr.com/c82cc09c4f768df4d3f36b2bafd5aea9/tumblr_pwuyez3xOs1v2hjm4o1_640.jpg">
</nav>
<main>
<article>
<h1>date</h1>
<p>
<img src="http://elev.stolav.it/CSS/images/dummy1.jpg">
text
</p>
</article>
</main>
<footer>fotnoter</footer>
</body>
我不确定我应该在css代码中删掉什么,因为总体上会显示这样的位置:修复会使布局变得怪异。预先抱歉添加
显示:阻塞代码>(或flex,取决于您的需要),如下所示:
nav {
grid-area:nav;
border-top:1px solid black;
display:block;
position:sticky;
top:0;
}
如果不起作用,请尝试将导航包裹在容器中:
<div><nav>...</nav></div>
。。。
但是你为什么不把导航放在标题内呢?我刚刚尝试了你的解决方案,结果发生了与位置相同的事情:fixedi尝试了显示:阻塞,但仍然不起作用。布局现在是正常的,但侧边栏在页面开始之前不会粘住,在我添加div之后会粘住,但不是在页眉下而是在页眉上
<div><nav>...</nav></div>