CSS Float div 作为块而不是网格

发布于 2024-12-10 16:42:49 字数 288 浏览 0 评论 0原文

请查看 http://jsfiddle.net/Qu63T/1/ 上的小提琴

我想要的是绿色 div 漂浮在蓝色 div 旁边。和 .block div 显示为网格。我不想删除 .m div 并将 .block 浮动在容器内。不指定 .m 宽度可以做什么

没有 JavaScript Only CSS 解决方案

Please Check out the fiddle on http://jsfiddle.net/Qu63T/1/

What I want is The green div to float next to the blue one. and the .block divs to appear as a grid. I don't want to remove the .m div and float the .blocks inside the container. What Can be done without specifying width of .m

No JavaScript Only CSS Solution

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

无边思念无边月 2024-12-17 16:42:49

您可以在 .m 之后和 .block 之前添加一个包装 div,并设置他的宽度:

<div class="m">
     <div class="wrapper">
           <div class="block">
           (...)
           </div>
     </div>
</div>

样式:

.wrapper{
    width:100px;
}

或者您可以在 .m 中添加一些填充,这样块就会换行。但这是一个奇怪的解决方案。

You can add a a wrapper div, after .m and before .block and set his width:

<div class="m">
     <div class="wrapper">
           <div class="block">
           (...)
           </div>
     </div>
</div>

Style:

.wrapper{
    width:100px;
}

Or you can add some padding in .m, so the blocks will line-break. But that's a wierd solution.

纸短情长 2024-12-17 16:42:49

据我了解您的问题,您希望 floated div'sblock div's 一样工作
你的
CSS:

block{
        border: 1px solid white;
        float: left;
        display: inline-block;
        clear:left;
    }

检查这个http://jsfiddle.net/sandeep/Qu63T/6/

as i understand your question that you want floated div's work like block div's
your
CSS:
.

block{
        border: 1px solid white;
        float: left;
        display: inline-block;
        clear:left;
    }

check this http://jsfiddle.net/sandeep/Qu63T/6/

暖阳 2024-12-17 16:42:49

在这种情况下,最好的解决方案是假设“m”不是浮动的,它只是一个位于更大容器内的填充 div,并且蓝色 div 处于绝对定位状态,如下所示:

.c{
background-color: red;
display: block;
position: relative;
overflow: hidden;
}
.l{
background-color: blue;

height: 40px;
width: 120px;
display: inline-block;
position: absolute;
left: 0;
right:0;
}
.m{
display: block;
position: relative;
margin-left: 125px;
}
.block{
border: 1px solid white;
float: left;
display: inline-block;
background-color: green;
}

http://jsfiddle.net/Qu63T/7/

Your best solution in this case would be to assume that "m" isnt floating, its just a padded div sitting inside a bigger container, and the blue div is living absolutely positioned, like this:

.c{
background-color: red;
display: block;
position: relative;
overflow: hidden;
}
.l{
background-color: blue;

height: 40px;
width: 120px;
display: inline-block;
position: absolute;
left: 0;
right:0;
}
.m{
display: block;
position: relative;
margin-left: 125px;
}
.block{
border: 1px solid white;
float: left;
display: inline-block;
background-color: green;
}

http://jsfiddle.net/Qu63T/7/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文