元素的水平收缩方式

Posted Lu_Lu的攻城路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了元素的水平收缩方式相关的知识,希望对你有一定的参考价值。

以导航条为例,你通常希望链接的宽度根据它们包含多少文本而有所不同。

1.

display:inline-block

如果导航栏有一个您可以设置的父级text-align:center,您可以使用display:inline-block导航栏缩小包装。

html如下:

<div class="navbar">
    <ul>
        <li><a href="/">Home</a></li>
        <li><a href="/">Home</a></li>
        <li><a href="/">Home</a></li>
        <li><a href="/">Home</a></li>
    </ul>
</div>

css代码如下:

.navbar {
    text-align:center;
}
.navbar ul {
    display:inline-block;
}
.navbar li {
    float:left;
}
.navbar li + li {
    margin-left:20px;
}

这个方法可以用在很多地方,

对于IE,甚至在IE7中,如果您触发haslayout并更改display:inline-blockdisplay:inline

.navbar ul {
	display:inline;
	zoom:1;
}

 

2 、display:table

<ul class="navbar">
    <li><a href="/">Home</a></li></ul>

css如下:

.navbar {
    display:table;
    margin:0 auto;
}
.navbar li {
    display:table-cell;
}
.navbar li + li {
    padding-left:20px;
}

这种方法不能在IE7或更早版本中工作。

以上是关于元素的水平收缩方式的主要内容,如果未能解决你的问题,请参考以下文章

CSS代码片段

jQuery 特殊效果

按钮随机收缩

如何使 <svg> 元素扩展或收缩到其父容器?

jquery实现可展开收缩的首页大图广告展示方式 泰山压顶代码js V2.0

css常用代码片段 (更新中)