标签使用的严谨很重要

问题:ios移动端中自定一下拉弹窗不显示,on click点击事件没效果

代码

html
<div class="select-option" style="display: block;">
   <option class="option" value="100276">莆田市</option>
   <option class="option" value="220001">福州市</option>
 </div>

css
.select-option{
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 999;
  ····
}

排查过程:

  • 确定点击是否生效
    排查点击是否生效,ios对dom事件绑定是有要求的,div是无法触发click的,所以要用a或者button
    在这里页面实用的就是a标签不存在没有触发click的问题,打印执行过程,确实出发了点击事件。

那么问题就来了,是定位在ios中有特殊要求还是其他问题呢?

  • 确定定位是否影响
    去掉相对定位,内容在ios中还是不显示,那就说明不是定位问题

  • 那么真相只有一个了 这个标签有毒
    最终确定是 option 在ios 中是不能直接使用的,不符合语法规则。改成div就好了

你可能感兴趣的:(css,js,css,html,javascript)