CSS float 定位和缩放问题

简介:

今天调试一个看起来很简单的前端问题,但却花了太多的时间,示例代码:

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta charset="utf-8" />
</head>
<body>
    <div>
        <div style="width:10%; float:left; height:200px;background-color:aqua"></div>
        <div style="background-color:antiquewhite;float:right; width:90%;">
            <table style="width:100%">
                <thead>
                    <tr>
                        <td style="width:10%; text-align: center;"><b>状态</b></td>
                        <td style="width:50%; text-align: center;"><b>标题</b></td>
                        <td style="width:10%; text-align: center;"><b>浏览量</b></td>
                        <td style="width:20%; text-align: center;"><b>发布时间</b></td>
                        <td style="width:10%; text-align: center;">&nbsp;<b>操作</b></td>
                    </tr>
                </thead>
                <tbody>
                    <tr bgcolor="#ffffff">
                        <td align="center">
                            <span>已发布</span>
                        </td>
                        <td>
                            <a href="http://www.cnblogs.com/xishuai/" target="_blank" class="big">田园里的蟋蟀</a>
                        </td>
                        <td style="text-align: center;">0</td>
                        <td style="text-align: center;">2016-03-17 15:26</td>
                        <td style="text-align: center;">修改 删除</td>
                    </tr>
                    <tr bgcolor="#ffffff">
                        <td align="center">
                            <span>已发布</span>
                        </td>
                        <td>
                            <a href="http://www.cnblogs.com/xishuai/" target="_blank" class="big">田园里的蟋蟀</a>
                        </td>
                        <td style="text-align: center;">0</td>
                        <td style="text-align: center;">2016-03-17 15:26</td>
                        <td style="text-align: center;">修改 删除</td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
</body>
</html>

效果:

435188-20160325163916761-1553481809.png

上面是我们一般设计后台使用的代码和样式,左边是菜单区域,右边是内容操作区域,但左边菜单区域因为分辨率或窗口大小进行了缩放,也就是菜单变形了,现在要求左边菜单固定宽度不拉伸,右边内容操作区域可以进行缩放,所以,我们改了下面的代码:

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta charset="utf-8" />
</head>
<body>
    <div>
        <div style="width:144px; float:left; height:200px;background-color:aqua"></div>
        <div style="background-color:antiquewhite;">
            <table style="width:100%">
                <thead>
                    <tr>
                        <td style="width:10%; text-align: center;"><b>状态</b></td>
                        <td style="width:50%; text-align: center;"><b>标题</b></td>
                        <td style="width:10%; text-align: center;"><b>浏览量</b></td>
                        <td style="width:20%; text-align: center;"><b>发布时间</b></td>
                        <td style="width:10%; text-align: center;">&nbsp;<b>操作</b></td>
                    </tr>
                </thead>
                <tbody>
                    <tr bgcolor="#ffffff">
                        <td align="center">
                            <span>已发布</span>
                        </td>
                        <td>
                            <a href="http://www.cnblogs.com/xishuai/" target="_blank" class="big">田园里的蟋蟀</a>
                        </td>
                        <td style="text-align: center;">0</td>
                        <td style="text-align: center;">2016-03-17 15:26</td>
                        <td style="text-align: center;">修改 删除</td>
                    </tr>
                    <tr bgcolor="#ffffff">
                        <td align="center">
                            <span>已发布</span>
                        </td>
                        <td>
                            <a href="http://www.cnblogs.com/xishuai/" target="_blank" class="big">田园里的蟋蟀</a>
                        </td>
                        <td style="text-align: center;">0</td>
                        <td style="text-align: center;">2016-03-17 15:26</td>
                        <td style="text-align: center;">修改 删除</td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
</body>
</html>

效果:

435188-20160325220148511-1835881270.png

这个我花了很多时间进行调整,不是表格宽度超过内容区域,就是宽度不够,某个界面下调整了,但伸缩下界面,宽度又乱了,后来无意间调整了一下样式,就可以了,代码如下:

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta charset="utf-8" />
</head>
<body>
    <div>
        <div style="width:144px; float:left; height:200px;background-color:aqua"></div>
        <div style="background-color:antiquewhite; margin-left:144px">
            <table style="width:100%">
                <thead>
                    <tr>
                        <td style="width:10%; text-align: center;"><b>状态</b></td>
                        <td style="width:50%; text-align: center;"><b>标题</b></td>
                        <td style="width:10%; text-align: center;"><b>浏览量</b></td>
                        <td style="width:20%; text-align: center;"><b>发布时间</b></td>
                        <td style="width:10%; text-align: center;">&nbsp;<b>操作</b></td>
                    </tr>
                </thead>
                <tbody>
                    <tr bgcolor="#ffffff">
                        <td align="center">
                            <span>已发布</span>
                        </td>
                        <td>
                            <a href="http://www.cnblogs.com/xishuai/" target="_blank" class="big">田园里的蟋蟀</a>
                        </td>
                        <td style="text-align: center;">0</td>
                        <td style="text-align: center;">2016-03-17 15:26</td>
                        <td style="text-align: center;">修改 删除</td>
                    </tr>
                    <tr bgcolor="#ffffff">
                        <td align="center">
                            <span>已发布</span>
                        </td>
                        <td>
                            <a href="http://www.cnblogs.com/xishuai/" target="_blank" class="big">田园里的蟋蟀</a>
                        </td>
                        <td style="text-align: center;">0</td>
                        <td style="text-align: center;">2016-03-17 15:26</td>
                        <td style="text-align: center;">修改 删除</td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
</body>
</html>

主要改进是在右侧内容区域增加margin-left:144px样式,并且宽度要和菜单区域的宽度一致,缩放效果:

435188-20160325220751854-1305265272.png





本文转自田园里的蟋蟀博客园博客,原文链接:http://www.cnblogs.com/xishuai/p/css-float-margin-left.html,如需转载请自行联系原作者

相关文章
|
5月前
|
前端开发
CSS float(浮动)
CSS float(浮动)
54 2
|
前端开发
css图片在区域里缩放
css图片在区域里缩放
|
前端开发 容器
如何使用 CSS 来控制 img 标签在父元素中自适应宽度或高度,并按比例显示
如何使用 CSS 来控制 img 标签在父元素中自适应宽度或高度,并按比例显示
633 1
|
前端开发
css--float浮动
css--float浮动
|
前端开发
css中如何在一行计算固定宽度和自适应宽度
css中如何在一行计算固定宽度和自适应宽度
94 0
CSS3 transform 2D转换之移动 旋转 缩放(详细讲解看完就会)
CSS3 transform 2D转换之移动 旋转 缩放(详细讲解看完就会)
150 0
CSS3 transform 2D转换之移动 旋转 缩放(详细讲解看完就会)
|
移动开发 JavaScript HTML5
JS获取img图片的原始尺寸高度和宽度
JS获取img图片的原始尺寸高度和宽度
538 0
JS获取img图片的原始尺寸高度和宽度
|
前端开发
CSS设置标签、图片,放大、缩小、旋转、移动、倾斜(transform)
CSS设置标签、图片,放大、缩小、旋转、移动、倾斜(transform)
|
前端开发 容器
web前端学习(二十三)——CSS3定位(position)、元素裁剪(clip)及鼠标样式(cursor)属性的相关设置
web前端学习(二十三)——CSS3定位(position)、元素裁剪(clip)及鼠标样式(cursor)属性的相关设置
web前端学习(二十三)——CSS3定位(position)、元素裁剪(clip)及鼠标样式(cursor)属性的相关设置
|
前端开发 JavaScript UED
CSS 技巧一则 -- 不定宽溢出文本适配滚动
CSS 技巧一则 -- 不定宽溢出文本适配滚动
249 0
CSS 技巧一则 -- 不定宽溢出文本适配滚动