javascript - 使用手机时如何隐藏一个 svg 并显示另一个?

标签 javascript reactjs react-redux react-bootstrap reactstrap

我正在开发一个带有反应带的网络应用程序。我使用 2 个 SVG 作为背景,我希望仅当用户从 PC 访问它时才显示一个,而另一个仅当用户在手机上访问时才显示。所以基本上我希望当用户用手机访问网站时隐藏第一个 SVG,反之亦然

最佳答案

一个简单而优雅的解决方案是在要在 PC 上显示的 svg 的父 html 元素上应用引导类 hidden-xsvisible-xs svg分别在移动设备上显示。

工作原理:

  1. 所有以 -xs 为后缀的类仅在视口(viewport)低于 480 像素时应用其效果。
  2. 因此,在 hidden-xs 的情况下,只要视口(viewport)分辨率低于 480 像素,应用该类的元素就会隐藏。在更高的分辨率下,默认情况下将显示
  3. 对于 visible-xs 来说,应用该类的元素仅在视口(viewport)分辨率低于 480 像素时显示。在更高的分辨率下,默认情况下它将隐藏

示例:

<div class="visible-xs">
  <svg /> <-- This will be shown on mobile and hidden on desktop --!>
</div>
<div class="hidden-xs">
 <svg /> <-- This will be hidden on mobile and shown on desktop --!>
</div>

在 Bootstrap 4 中,这可以通过使用以下格式的类来实现:

  • .d-{value} 代表 xs
  • .d-{breakpoint}-{value} 用于 smmdlg 和 <强>xl。

其中是以下之一:

  • 内联
  • 内联 block
  • block 表
  • 表格单元格
  • 表格行
  • 弯曲
  • 内联柔性

关于javascript - 使用手机时如何隐藏一个 svg 并显示另一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52146605/

相关文章:

javascript - onClick 调度一个操作。我如何等待我的派送完成?

javascript - 在 setTimeout() 中作为参数传递时变量丢失

javascript - JavaScript 中的数据污染

javascript - 我在 list 中设置了地理定位权限,但每个页面仍然要求共享位置

javascript - 无法读取未定义的属性 'category' - 尝试使用状态数据时出错

javascript - React/Redux : On Hover of one Component, 更改所有组件的颜色

javascript - 具有多个值的 Mongo $addToSet 语法正确

javascript - 如何使用 react 检查元素是否存在?

javascript - 在 React 中处理巨大的 10 列表排序的最佳方法?

javascript - 使用变量访问 props