`
v7sky
  • 浏览: 76486 次
文章分类
社区版块
存档分类
最新评论

【AngularJS】一次 float 和 display 的效果对比

 
阅读更多
<!DOCTYPE html>
<html lang="zh" ng-app="myApp">

<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.css">
    <style type="text/css">
        .shop-item {
            background-color: slategray;
            width: 180px;
            /*float: left;*/
            margin: 5px;
            font-size: 12px;
            overflow: hidden;
            border: 1px solid transparent;

            display: inline-block;
            vertical-align: top;
        }

        .tag-item {
            margin-top: 5px;
            margin-left: 1px;
            margin-bottom: 3px;
            display: inline-table;
        }

    </style>
</head>

<body ng-controller="ShopController as vm">
    <div>店铺列表</div>
    <shop-view shop-list="vm.shopList"></shop-view>
    <div>统计信息:_____</div>
</body>

<script src="bower_components/angular/angular.js"></script>
<script>
        angular.module("myApp",[])

            .controller("ShopController",function($scope){
                vm= this;

                vm.shopList = [
{name:'店铺1',tagList :[{name:'短裤'},{name:'护腕'}]},
{name:'店铺2',tagList :[{name:'短裤'},{name:'上衣'},{name:'跑鞋'}]},
{name:'店铺3',tagList :[{name:'超级短裤'},{name:'超级袜子'},{name:'超级跑鞋'}]},
{name:'店铺4',tagList :[{name:'短裤'},{name:'袜子'},{name:'跑鞋'}]},
{name:'店铺5',tagList :[{name:'短裤'},{name:'袜子'},{name:'跑鞋'},{name:'护腕'},{name:'计时器'}]},
{name:'店铺6',tagList :[{name:'短裤'},{name:'袜子'},{name:'跑鞋'}]},
{name:'店铺7',tagList :[{name:'短裤'},{name:'袜子'},{name:'跑鞋'}]},
{name:'店铺8',tagList :[{name:'短裤'},{name:'袜子'},{name:'护腕'},{name:'护腕'},{name:'护腕'},{name:'护腕'}]},
{name:'店铺9',tagList :[{name:'短裤'},{name:'袜子'},{name:'护腕'},{name:'护腕'}]},
{name:'店铺10',tagList :[{name:'短裤'},{name:'袜子'},{name:'帽子'},{name:'手套'},{name:'计时器'}]},
                ];
            })

            .directive("shopView",function(){
                return{
                    restrict : 'EA',
                    template :
                        '<div><div ng-repeat="shop in shopList" class="shop-item">'+
                            '<div><span>{{shop.name}}</span></div>'+
                            '<div ng-repeat="tag in shop.tagList" class="tag-item">'+
                            '<span class="label label-warning">{{tag.name}}</span>'+
                            '</div>'+
                        '</div></div>',
                    replace : true,
                    scope :{
                        shopList : '='
                    },
                    link:function (scope,element,attrs) {

                    }
                }
            })          
    </script>
</html>


display 和 vertical-align的配合,达到类似卡牌的效果,如下




如果改为float,效果如下:
1、注意店铺7,由于店铺5的高度> 店铺4, 故其被挂在店铺5后面了,
2、由于float 脱离的文档留,故其外层div高度为0,导致“统计信息____”的div的宽度也被拉宽(解决方案是在 div内,包含一个 <div style="clear:both;"></div> 对float的效果做清理,这样可以使父div的高度被撑开)




总结一下:
1 float适合有文字环绕时的效果
2 inline-block:行内块效果,适合这种图片排列且换行(比如导航条、图片卡牌),占用普通文档流,且可以用 vertical-align 这个属性设置对齐方式
  • 大小: 37.3 KB
  • 大小: 44 KB
0
2
分享到:
评论

相关推荐

    stm32f103的4字节转float和float转4字节代码

    这段代码中,我们定义了一个`union`结构体`ByteFloat`,包含一个`uint32_t`类型的数组(4字节)和一个`float`类型。通过遍历传入的4字节数组并将其赋值给`union`的`bytes`成员,我们可以得到等效的浮点数值存储在`f`...

    display和float以及布局.md

    display和float以及布局.md

    css(display,float,position)深入理解

    display 用来设置元素的显示方式 display : block | none | inline | inline-block inline:指定对象为内联元素 block:指定对象为块元素 inline-block:指定对象为内联块元素 none:隐藏对象 float 控制元素是否...

    jquery插件之层固定效果floatbox

    总之,floatbox插件是实现层固定效果的一个高效工具,它以简洁的API和丰富的功能,使得网页设计师和开发者能够快速、便捷地创建出吸引人的浮动元素。无论是提升网站导航体验,还是优化广告展示,floatbox都能提供...

    Float和Bytes互转小工具

    自己写的float和bytes互相转换的小工具.希望能有帮助.

    float2ascii.rar_acsii浮点_ascii2float_ascii转换float_float转化为ascii_转

    "转ascii码"和"float转化为ascii"是描述浮点数到ASCII码转换的两种不同的表达方式,本质上是一回事。而"ascii转换float"和"ascii2float"则是转换的逆过程。 `D-FT6336G-DataSheet-V1.0.pdf`文件看起来是一个数据...

    float与16进制转换软件_float_

    在IEEE 754标准中,float是一种32位的数据格式,它包含一个符号位、8位指数和23位尾数,能够表示大约6.8×10^-39到3.4×10^38之间的数字(包括零和无穷大)。 标签“float”进一步确认了软件的核心功能,即与浮点数...

    字节和float转换小工具

    标题中的"字节和float转换小工具"是一个专门针对字节与浮点数(float)之间转换的实用程序。这个小工具设计的目标是帮助开发者高效地在字节序列和浮点数之间进行切换,这在数据传输、存储或解析二进制文件时非常有用...

    float pie float pie float pie float pie

    float piefloat pie float pie float pie float pie

    float和16进制之间的转换

    float和16进制之间的转换代码

    CSS display:inline和float:left两者区别探讨

    本文和大家重点讨论一下CSS display:inline和float:left两者的区别,CSS display是指显示状态,inline表示内联,特点是紧贴着前一个内联元素,通常默认的内联元素有span,a,em,strong等。而float表示的是浮动,float:...

    16进制与float互转

    16进制(Hexadecimal)使用0-9和A-F这16个符号来表示数值,每一位的权重是2的幂次。例如,16进制数`0x1A`等同于十进制数26(1*16^1 + 10*16^0)。 二、浮点数(float)的结构 浮点数在计算机内部通常是按照IEEE 754...

    float和double

    float和double浮点数类型的精度和范围解析 浮点数类型float和double是编程语言中最常用的数值类型,但是它们的精度和范围却是程序员需要注意的重要问题。本文将详细解释float和double的范围和精度,及其在商业计算...

    float与double的范围和精度

    float与double的范围和精度 float和double是两种常用的浮点数类型,它们的范围和精度是由其内部存储格式决定的。了解float和double的范围和精度对于编程和数据处理非常重要。 1. 范围 float和double的范围是由...

    浅谈CSS中display/float/position属性值的相互影响

    有3个属性和布局以及box的创建有关:’display’, ‘position’ 和 ‘float’,彼此交互作用如下: 如果’display’值为’none’,则’position’ 和 ‘float’无作用。这种情况下,不生成box。 否则,如果’...

    HEX-Float转换工具 16进制转成float 或double类型数据的一个小工具

    总之,“HEX-Float转换工具”是一个针对IT专业人士设计的小型但高效的辅助工具,能够有效地帮助用户在16进制和浮点数之间进行转换。它简化了计算过程,提高了工作效率,对于理解和处理二进制数据的工作者来说,无疑...

    float和16进制互转

    16进制转float,float转16进制的c语言代码,用的机器内自转

    C语言头文件 FLOAT

    C语言头文件 FLOATC语言头文件 FLOATC语言头文件 FLOATC语言头文件 FLOATC语言头文件 FLOATC语言头文件 FLOATC语言头文件 FLOATC语言头文件 FLOATC语言头文件 FLOATC语言头文件 FLOATC语言头文件 FLOATC语言头文件 ...

    4BYTE转换成float型代码

    在计算机科学中,数据通常以二进制形式存储,其中浮点数(如float和double)是用于表示小数的常见类型。浮点数在内存中的表示方式遵循特定的标准,如IEEE 754。当你从一个4字节的数据块(通常代表一个32位整数)转换...

    LitJsonExt 支持 float类型

    LitJsonExt是一个针对 LitJson 库的扩展,主要目的是解决原生 LitJson 在处理 `float` 数据类型时可能存在的不支持或兼容性问题。LitJson 是一个轻量级的 JSON 库,它被广泛用于 C# 开发中,因为其性能高效、易于...

Global site tag (gtag.js) - Google Analytics