首页 > 其他 > 详细

IE6、7 不支持display:inline-block的问题

时间:2014-03-20 08:48:17      阅读:445      评论:0      收藏:0      [点我收藏+]

经常遇到此类问题,解决的办法从来都是网上找css解决方案,拷贝粘贴,能用就行,从未细想。

今天整理出来。

先看两段结构:

bubuko.com,布布扣
<!--内联元素 -->
    <div class="menu_1">
        <a href="#">内联元素</a>
        <a href="#">内联元素</a>
        <a href="#">内联元素</a>
        <a href="#">内联元素</a>
        <a href="#">内联元素</a>
        
    </div>
    
    <!--块元素-->
    <div class="menu_2">
        <p>块元1素</p>
        <p>块元素100</p>
        <p>块元素</p>
        <p>块元素</p>
        <p>块元素1000</p>
        <p>块元素</p>
        <p>块元素</p>
    </div>
bubuko.com,布布扣

问题来了:要产生display:inline-block的 元素,可能是内联元素,也可能是块元素。

1,内联元素。应用样式:

bubuko.com,布布扣
.menu_1{ height:30px; background:#ffc; width:380px;}
.menu_1 a{ background:#0CF; margin-left:10px; display:inline-block;}
bubuko.com,布布扣

IE6,7 都可以正常显示display:inline-block效果。  

所以,如果是内联元素,解决方法:直接加 display:inline-block;

 

 

2,块元素。应用样式:

bubuko.com,布布扣
.menu_2{ width:430px; height:30px; background:#ccc;}
.menu_2 p{ background:#f00; margin-left:5px; display:inline-block; _zoom:1;}
.menu_2 p{*display:inline;}
bubuko.com,布布扣

IE6,7 都可以正常显示display:inline-block效果。 

所以,如果是块元素,解决方法:

先给元素加   display:inline-block; _zoom:1;  

再给元素加   *display:inline;

【注意:】要写两个display,且两个不能写在一个括号里,这是IE的一个bug.

 

附完整代码,供测试用:

bubuko.com,布布扣
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>dispaly:inline-block</title>
<style type="text/css">
    .menu_1{ height:30px; background:#ffc; width:380px;}
    .menu_1 a{ background:#0CF; margin-left:10px;}
    

    .menu_2{ width:430px; height:30px; background:#ccc;}
    .menu_2 p{ background:#f00; margin-left:5px; display:inline-block; _zoom:1;}
    .menu_2 p{*display:inline;}
</style>
</head>

<body>
    <!--内联元素 -->
    <div class="menu_1">
        <a href="#">内联元素</a>
        <a href="#">内联元素</a>
        <a href="#">内联元素</a>
        <a href="#">内联元素</a>
        <a href="#">内联元素</a>
        
    </div>
    
    <!--块元素-->
    <div class="menu_2">
        <p>块元1素</p>
        <p>块元素100</p>
        <p>块元素</p>
        <p>块元素</p>
        <p>块元素1000</p>
        <p>块元素</p>
        <p>块元素</p>
    </div>
</body>
</html>
bubuko.com,布布扣

IE6、7 不支持display:inline-block的问题,布布扣,bubuko.com

IE6、7 不支持display:inline-block的问题

原文:http://www.cnblogs.com/smjia/p/3610928.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!