zoukankan      html  css  js  c++  java
  • 如何把select默认的小三角替换成自己的图片

    不同的浏览器默认的select的选项图标是不同的,例如:

    在chrome中,是这样的:

    未点击时    点击时 

    在Firefox中是这样的:

    未点击时  点击时  

    在IE9中是这样的:

    未点击时 点击时 

    其它浏览器大家可以自己尝试看看select的默认样式

    下面开始正式介绍怎么替换:

    这是我的html代码:

    <div>
      <select id="mySelect">
        <option value="bj">北京</option>
        <option value="sh">上海</option>
        <option value="tj">天津</option>
        <option value="cq">重庆</option>
       </select>
    </div>

    1、 首先,在css文件中,如果想改变select的默认边框,可以直接对其进行设置   注意:对IE不起作用 

    #mySelect{

      border:1px solid red;   /*将select的边框设置成红色*/

      /*border:0;  或者border:none      如果不想要边框,可以这样设置   */

    }

     设置完后

    在chrome中是这样的  

     

    在Firefox中是这样的

    2、去除select默认的下拉图片   注意:对IE不起作用 

    #mySelect{

      border:1px solid red; 

      appearance: none;

      -webkit-appearance: none;   /*去除chrome浏览器的默认下拉图片*/

      -moz-appearance: none;  /*去除Firefox浏览器的默认下拉图片*/

    }

    在chrome和Firefox中都是下面图片的效果:

     3、添加自己的图片   注意:对IE不起作用 

     #mySelect{

      border:1px solid red; 

      appearance: none;

      -webkit-appearance: none;   /*去除chrome浏览器的默认下拉图片*/

      -moz-appearance: none;  /*去除Firefox浏览器的默认下拉图片*/

      background:url('tir.jpg') no-repeat right center; 

      /*background:url('自己的图片路径') no-repeat right center;  将自己的图片放在select的最右边的中部,图片的位置可以通过background-position属性

       自己设置进行位置的微调*/ 

    }

    设置后的样式是这样的:chrome和Firefox都是一样的

    4、想让三角图片过去,给select设置宽度即可

    #mySelect{

      border:1px solid red; 

      appearance: none;

      -webkit-appearance: none;   /*去除chrome浏览器的默认下拉图片*/

      -moz-appearance: none;  /*去除Firefox浏览器的默认下拉图片*/

      background:url('tir.jpg') no-repeat right center; 

      /*background:url('自己的图片路径') no-repeat right center;  将自己的图片放在select的最右边的中部,图片的位置可以通过background-position属性

       自己设置进行位置的微调*/ 

      width:100px;

    }

    实现效果如下:chrome 和Firefox一样

    注意:在某些老的Firefox版本中,可能设置完这些后,Firefox中的默认小三角还是在,如下图:

    此时,在select选择器中添加

      text-indent:0.01px;

      text-overflow:"";

      两个属性即可

    #mySelect{

      border:1px solid red; 

      appearance: none;

      -webkit-appearance: none;   /*去除chrome浏览器的默认下拉图片*/

      -moz-appearance: none;  /*去除Firefox浏览器的默认下拉图片*/

      background:url('tir.jpg') no-repeat right center; 

      width:100px;

      text-indent:0.01px;

      text-overflow:"";

    }

     
  • 相关阅读:
    贪吃蛇模块划分
    你今天听见《风声》了吗“ 学习无处不在继潜伏后《风声》观后
    贪吃蛇结束条件分析
    CSS fieldset制作表单,抛弃Table
    两个路由器串联
    .net 几种获取路径方法
    C# 对文件与文件夹的操作 删除、移动与复制
    mvc3在IIS中的部署(转)
    HTTP 错误 500.21 Internal Server Error
    遗留问题
  • 原文地址:https://www.cnblogs.com/demonswang/p/6230705.html
Copyright © 2011-2022 走看看