`
tom&jerry
  • 浏览: 66159 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用css float布局时的高度不等的问题

    博客分类:
  • css
 
阅读更多

在使用css的float 作表格状布局时,如果容器内各元素的高度不一致,将产生如下效果


 
即,不能在换行时从最左边开始,显得看起来比较乱

其代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<style type="text/css">
    .fl{
        float: left;
        width: 110px;
        margin: 10px 10px;
        background-color: #e92;
        display: block;
    }
   
    .cl{
        clear: left;
    }
</style>
</head>
<body>
<div style="width: 400px;">
    <div class="fl" style="height: 150px;"></div>
    <div class="fl" style="height: 100px;"></div>
    <div class="fl" style="height: 50px;"></div>
   
    <div class="fl" style="height: 50px;"></div>
    <div class="fl" style="height: 150px;"></div>
    <div class="fl" style="height: 50px;"></div>
   
    <div class="fl" style="height: 100px;"></div>
    <div class="fl" style="height: 150px;"></div>
    <div class="fl" style="height: 100px;"></div>

    <div class="fl" style="height: 50px;"></div>
   
    <div class="cl"></div>
</div>
</body>
</html>
 

将代码更改为:

 

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<style type="text/css">
    .fl{
        float: left;
        width: 110px;
        margin: 10px 10px;
        background-color: #e92;
        display: block;
    }
   
    .cl{
        clear: left;
    }
</style>
</head>
<body>
<div style="width: 400px;">
    <div class="fl" style="height: 150px;"></div>
    <div class="fl" style="height: 100px;"></div>
    <div class="fl" style="height: 50px;"></div>
    <div class="cl"></div>
    <div class="fl" style="height: 50px;"></div>
    <div class="fl" style="height: 150px;"></div>
    <div class="fl" style="height: 50px;"></div>
    <div class="cl"></div>
    <div class="fl" style="height: 100px;"></div>
    <div class="fl" style="height: 150px;"></div>
    <div class="fl" style="height: 100px;"></div>
    <div class="cl"></div>
    <div class="fl" style="height: 50px;"></div>
   
    <div class="cl"></div>
</div>
</body>
</html>
 


时才能逐行展示,如下图:


 

但目前未找到使其使其每一行 上下居中对其或底部对其的方法。

以上内容若在jsp中动态生成,可使用类似代码:

<div style="width: 400px">
    <c:forEach items="${items}" var="item" varStatus="i">
       
        <div class="fl">${item.content}</div>
       
        <c:if test="${i.count mod 3 eq 0}">
            <div style="clear: both;"></div>
        </c:if>
    </c:forEach>
</div>
 

 

  • 大小: 4.8 KB
  • 大小: 4.8 KB
分享到:
评论

相关推荐

    css-template三列布局

    "css-template三列布局"指的是利用CSS来创建一种常见的网页布局模式,即页面分为三个等宽或不等宽的列。这种布局广泛应用于网站的头部、主体内容和侧边栏。接下来,我们将深入探讨如何实现这样的布局,并介绍一些...

    div+css布局资料.zip

    4. **浮动布局**:利用CSS的`float`属性,让元素在容器内左右浮动,常用于创建多列布局。 5. **定位布局**:使用`position`属性(如`absolute`、`relative`、`fixed`),精确控制元素位置,适用于需要固定位置的元素...

    div+css教程

    1. 创建基本布局:学习如何使用`div`和CSS创建简单的头部、主体和底部布局。 2. 复杂布局:探索如何利用浮动、定位或Flexbox、Grid创建多列、响应式的复杂网页布局。 3. 响应式设计:理解媒体查询(media queries...

    关于页面的布局

    例如,一个常见的做法是将页面分为多个列,如左侧栏和主要内容区域,使用`&lt;div&gt;`和CSS的`float`属性来排列它们。 2. **网格布局**:网格布局允许将页面划分为多个等宽或不等宽的单元格,常用于展示图片或内容列表。...

    tabs背景不等宽例子

    2. **浮动布局**:在旧版本的CSS中,可以使用float属性(如`float: left;`)使元素向左浮动,从而实现水平排列。每个tab的宽度可以通过设置百分比来适应其内容的长度,但这种方法在处理响应式布局时可能较为复杂。 ...

    前端大厂最新面试题-column_layout.docx

    /* 生成BFC,计算高度时考虑浮动的元素 */ padding: 20px; height: 200px; } .left { width: 200px; height: 200px; float: left; background: coral; } .right { width: 120px; height: 200px; float: ...

    CSS实现每行新闻数量不等效果代码

    标题中的“CSS实现每行新闻数量不等效果代码”指的是在网页设计中,如何使用CSS来展示新闻列表,使得每行显示的新闻标题数量根据标题的长度动态调整,以达到美观且适应性强的布局效果。描述中提到的效果是常见的新闻...

    7三列_左右固定_中间自适应布局.rar

    CSS可能通过设置盒模型属性(如`width`、`padding`、`margin`和`float`)来控制每个列的布局,而JavaScript或许用于在窗口大小改变时动态调整中间内容的布局。 为了实现这样的布局,设计师和开发者可能会使用以下...

    网页中英文混排行高不等问题的解决方法

    特别是当使用列表(li)元素进行浮动(float)布局时,不同浏览器对于中英文字符的基线处理不一致导致行高的不均问题显得尤为突出。具体来说,Arial字体与宋体在显示效果上存在差异,尤其是在Internet Explorer的旧...

    瀑布流 jQuery html

    10. **浏览器兼容性**:虽然jQuery能解决大部分跨浏览器问题,但在实现瀑布流布局时仍需关注不同浏览器对CSS3特性和JavaScript API的支持情况。 综上所述,"瀑布流 jQuery html" 主题涵盖的内容包括使用jQuery进行...

    waterFall瀑布流插件

    瀑布流布局,也被称为Masonry布局,是一种常用于图片展示或商品列表的网页设计样式,它的特点是每一列的元素不等高,就像瀑布一样自上而下流淌。在这个"waterFall"瀑布流插件中,我们可以看到JavaScript和CSS技术的...

    空格&nbsp;在ie与在firefox下长度不一样问题

    在处理空格问题时,可以使用CSS的white-space属性来控制文本间的空格表现,以及text-align属性来控制文本的对齐方式。 3. 采用CSS3的box-sizing属性:在CSS3中,box-sizing属性允许我们指定元素的宽度和高度是否...

    使用font-size:0px 来制作跨浏览器的inline-block css属性

    描述中提到的布局场景是一个不等高的元素排列,通常情况下,如果元素需要堆叠在一起,人们可能会使用浮动布局(如`float`),但在元素高度不一致时,浮动布局就显得力不从心。此时,`inline-block`布局能提供一个...

    基于jQuery实现瀑布流效果

    2. **CSS样式**:瀑布流的基础是CSS布局,通常我们会使用浮动布局(float)或定位(position)来实现。在jQuery中,我们需要动态调整元素的宽高和位置,使其适应不断变化的布局。 3. **JavaScript基础**:理解...

    HTML_CSS:Web开发人员HTML和CSS课程

    流体布局使用百分比宽度实现响应式,网格系统将页面划分为多个等宽或不等宽的区域,Flexbox适合处理一维布局,而Grid则提供强大的二维布局控制。 **实战应用** 学习HTML和CSS后,可以创建静态网页、响应式网站、...

    一个支持任意尺寸的图片上下左右滑动效果

    2. **CSS布局**:代码中使用了`float`属性进行布局,创建了一个包含左右两个部分的结构。左边的`.divimg_div1`包含了宽高固定的元素,而右边的`.divimg_div2`则包含两个宽度和高度不等的元素,所有图片容器都设置了`...

    新投资组合

    包括盒模型(Box Model)、浮动(Float)、定位(Positioning)以及Flexbox和Grid布局。盒模型决定了元素的宽度、高度以及边距和内填充;浮动常用于创建多列布局,但现代网页设计更倾向于使用Flexbox或Grid,它们...

    Three-column-preview:这是用于练习3列预览的

    我们可以使用浮动布局(`float`)、Flexbox或CSS Grid来实现三栏布局。 - **浮动布局**: 设置`float`属性,使每个列向左或向右浮动,然后设置宽度和清除浮动以防止内容重叠。 ```css .column { float: left;...

    个人资料页

    1. **布局**:通过使用CSS盒模型,我们可以控制每个元素的宽度、高度、内边距和外边距,从而构建出理想的布局。例如,可以使用`display: flex`或`grid`属性来创建响应式的网格布局,适应不同屏幕尺寸的设备。 2. **...

Global site tag (gtag.js) - Google Analytics