javascript - 求助这种布局的改进方案
迷茫
迷茫 2017-04-11 12:00:25
[JavaScript讨论组]

布局的目的是为了让main区域自适应剩余宽度,唯一的一点是要留出aside占用的宽度,我是用定位做的,但是感觉不自然,有更好的解决方案吗?需要兼容ie8

https://jsfiddle.net/gaoqiang...

下面有些朋友的aside块当屏幕拉伸至最小宽度时,会贴着窗口向左覆盖main块的内容,这样太尴尬了,正常情况下,当屏幕小于最小宽度时,aside不应该跟着窗口跑啊

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(3)
黄舟

http://codepen.io/zengkan0703...
h1 元素默认宽度为100%,设置 overflow:hidden 属性就创建了一个新的 BFC(块格式化上下文,关于这个可以谷歌或者看我的文章),同时定宽的元素向右浮动,由于 BFC 不会与浮动区域重合,所以自适应的这个块会重新计算宽度。

其中一个重点是,定宽元素需要写在自适应元素之前,也就是需要优先渲染浮动元素,否则没有用。

PHPz

谢邀!
没有ie8,没法看效果,你试试这个。
https://jsfiddle.net/stardew/...

黄舟
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<style>
*{
    box-sizing: border-box;
}
html, body{
    font-family: 'Ubuntu Mono';
    height: 100%;
}
.main{
    position: relative;
    top: 0;
    left; 0;
    min-width: 500px;
    min-height: 100%;
    padding: 10px;
    margin-right: 240px;
    background: #eee;
}
h1{
        margin: 0;
    }
 .aside{
        float: right;
        width: 120px;
        height: 120px;
        padding: 10px;
        background: #eee;
    }
    
</style>
<body>
<p class="aside">
    <h2>aside</h2>
</p>
<p class="main">
  <h1>main</h1>
</p>

</body>
</html>
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号