2011-01-30 72 views
0


我有一些跨浏览器定位问题。我有一个简短的生物元素,我想让.bio_name元素遍历图像。使用下面的样式,我已经在所有流行的浏览器(Adobe的Browserlab中使用的浏览器)中工作,除了Safari 4.0和IE 7(在IE 8中它工作得很好)。从Safari 3到Safari 4/IE 7 t0 IE 8有什么变化?图像文本对齐,跨浏览器兼容性问题

Example of error

我有这样的结构:

<div id="some_id" class="bio"> 
<h3> 
<img src="http://www.hello.com/some.jpg" alt="blah" /> 
<a name="person"></a> 
</h3> 
<div class="bio_info"> 
<h3 class="bio_name">First Last</h3> 
blah 
<div class="add_bio">blah more</div> 
</div> 
<span class="add_bio_toggle">more</span> 
</div> 

,它的风格是这样的:

.bio{  
    position: relative; 
    min-height: 175px; 
    } 

.bio img{ 
    float: left; 
    margin-right: 10px; 
    width: 160px; 
    height: 143px; 
    vertical-align:text-top; 
    margin-top:10px; align:left; 
    } 

    .bio_info{ 
    margin-top: -40px; 
    } 

.bio_info h3{ 
    line-height: -1px;  
    margin-top: 7px; 
    } 

.add_bio_toggle{ 
    display: block; 
    cursor: pointer; 
    color: blue; 
    } 

回答

1

你创建这些 “生物分子” 的方式是不是最优。

试试这个:

Live Demoedit

它看起来IE7/8,火狐,Chrome,歌剧,Safari浏览器之间是一致的。

HTML:

<a name="person"> 
<div id="some_id" class="bio"> 
    <h3 class="bio_name">First Last First Last First Last First Last</h3> 
    <div class="add_bio"> 
     <img src="http://www.google.com/images/logos/ps_logo2.png" alt="blah" /> 
     <div> 
      blah more 
      <span class="add_bio_toggle">more</span> 
     </div> 
    </div> 
</div> 

CSS:

.add_bio { 
    background: #ccc; 
    overflow: auto 
} 
.add_bio div { 
    margin-left: 170px 
} 
.bio { 
    margin-bottom: 16px 
} 
.bio img { 
    float: left; 
    width: 160px; 
    height: 143px; 
    margin: 10px 0 0 0; 
    border: 1px solid red 
} 
.add_bio_toggle { 
    display: block; 
    margin: 12px 0 0 0 
}