IE6、7中SELECT标签高度的兼容性修复

作者:Liaodeity - 2015年05月06日

解决方案:

话说有一个方案可以”很容易“解决IE67的SELECT高度问题:设置font-size大小能直接影响高度。[这个方案也不知谁想出来的,30px的高度得设置字体为20px大小,你傻呀,这种方案要的有啥用,不仅失美观而且还掉水准]

一、如果不用兼容IE6,7的话,直接设置select的padding值即可解决高度问题。以下是select标签在各浏览器中的默认高度,根据默认高度,设置padding为相应值,以使select达到所需高度。

二、如果要兼容IE6,7,那就需要使用另一种方案了(select需要被多嵌套两层标签,一层用来遮挡select的默认边框[在IE6、7中设置border:0px也是无效的,高版本可用],另一层用来模拟”高度改变后的“select边框):

<style type="text/css">
.standard_select{ /*边框*/
    display:inline-block;
    border:solid 1px #E3E9EF;
    border-top-color:#ABADB3;
    padding:5px; /*调整此处改变select高度*/
}
.select_shelter{ /*遮挡默认边框*/
    display:inline-block;
    width:100px;
    *width:98px;
    height:20px;
    overflow:hidden;
}
.select_shelter select{
    *margin:-2px;
    padding:1px;
    border:0px;
    width:100px; /*select的宽度*/
}

</style>

<span class="standard_select"><!--边框-->
    <span class="select_shelter"><!--遮挡默认边框-->
    <select>
        <option value="papername" selected="selected">SELECT选项标签</option>
        <option value="state">选项二</option>
        <option value="state">选项三</option>
        <option value="state">选项四</option>
        <option value="state">选项五</option>
        <option value="state">选项六</option>
    </select>
    </span>
</span>


本文作者: Liaodeity

本文链接: https://www.jianbaizhan.com/article/208

版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!


 请勿发布不友善或者负能量的内容。审查将对发布广告等违规信息进行处罚!