首页 > web前端 > css教程 > 为什么使用固定定位时,100% 网格模板列的网格会超出主体?

为什么使用固定定位时,100% 网格模板列的网格会超出主体?

Mary-Kate Olsen
发布: 2024-11-02 09:07:02
原创
675 人浏览过

Why does a grid with 100% grid-template-columns extend beyond the body when using fixed positioning?

Grid-Template-Columns 为 100% 时网格超出正文

为什么 grid-template-columns 为 100% 的显示网格会扩展当位置设置为固定时超出正文?

问题:

考虑以下 CSS 和 HTML:



.parent {
位置:固定;
宽度:100%;
左:0;
顶部:14px ;
显示:网格;
网格模板列:40% 60%;
网格间隙:5px;
背景:#eee;
}
.left {
边框:2px 纯红色;
}
.right {
边框:2px 纯红色;
}
<div class='parent'><br> <div class='left'>LEFT</div><br> <div class='right'>< RIGHT</div><br></div>

位置不固定时,网格显示正确。但是,当位置设置为固定时,网格会超出右侧的主体。

解决方案:

问题不在于 100% 宽度,而在于与 grid-template-columns 属性。使用百分比和固定网格间隙将超过可用空间的 100%。

相反,依靠 fr 单位按比例分配可用空间,同时考虑网格间隙:


.parent {<br> 位置:固定;<br> 宽度:100%;<br> 左:0 ;<br> 顶部:14px;<br> 显示:网格;<br> 网格模板列:4fr 6fr;<br> 网格间隙:5px;<br> 背景:#eee;<br>}<br>.left {<br> 边框:2px 纯红色;<br>}<br>.right {<br> 边框:2px 纯红色;<br>}

<div class='parent'><br> <div class='left'>LEFT</div><br> <div class= 'right'>RIGHT</div><br></div>

通过使用 fr 单位,网格现在将正确分配空间,确保其保持在身体的范围内。

以上是为什么使用固定定位时,100% 网格模板列的网格会超出主体?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
上一篇:如何真正禁用网页上的水平滚动? 下一篇:jQuery 真的支持所有 CSS3 选择器吗? :nth-last-child() 之谜及其他。
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
相关专题
更多>
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板