Bootstrap Modal在iOS设备上不起作用

我在使用Bootstrap的网站上工作,有一个问题,我似乎无法修复。 这里是网站的草稿 。

在“我们做什么”面板上,我在第一个缩略图框(在缩略图下面写着“Enterprise Software development”)创build了一个可点击的模式窗口。 如果您在非移动设备上单击缩略图,则会popup一个模式窗口。

在台式电脑(或笔记本电脑)上,它工作得很好。 但是在iOS(iPhone,iPad等)上,它根本不起作用:即点击它不会显示模式窗口。

但是,如果您在“我们是谁”面板的页面上看起来较低,则会出现“查看更多关于Tim …”button。 如果您点击或点击该button,它将适用于所有设备(包括iOS)。

我可以看到两者之间的唯一区别是,第一个是在一个<div>标签,而第二个是在一个<button>标签。

Bootstrap不支持从iOS设备上的<div>启动模式窗口吗? 如果是这样,您是否看到我的代码有任何问题,只会在iOS设备上失败?

克里斯的答案是正确的。 更改div到一个button将有助于澄清你的标记。 但是,如果您需要保留相同的标记,您还可以添加cursor: pointer您的div元素的cursor: pointer ,以让safari知道这是可以点击的东西。 它也让我们的鼠标用户有一个标准的视觉提示,该元素也是可点击的。

只需添加类clickable ,然后包括以下CSS:

 .clickable { cursor: pointer; } 

这里是一个小提琴的MCVE与修复以及

注意我没有在这里使用Bootstrap的btn类,因为它们会自动添加cursor规则。

这根本不是Bootstrap特有的,这是iOS上的一个普遍问题。 默认情况下,许多非常用交互元素(如<div> )在iOS上不可点击/可点击。
有关更多详细信息,请参阅https://github.com/facebook/react/issues/134以及其中的链接和后续步骤&#x3002;
如果可能,请改用<button><a> 。 无论如何,交互式元素的<div>在语义上不是很合适。