ElementUI响应式布局bug、其中中el-col-sm-0会导致响应式布局失效的解决方法

ElementUI响应式布局bug、其中中el-col-sm-0会导致响应式布局失效的解决方法如下布局,如果将:sm=”0″则会导致456始终不显示下面得响应式布局目的就是希望在sm也就是屏幕宽度在小于992px时将456隐藏,不显示,但是如果这样做就会出现bug<el-col:xs=”24″:sm=”24″:md=”17″:lg=”19″:xl=”20″>123</el-col><el-col:xs=”0″:sm=”0″:md=”7″:lg=”5″:xl=”4″>456</el-col>完整得例子新建一个demo

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

如下布局,如果将:sm="0"则会导致456始终不显示
下面得响应式布局目的就是希望在sm也就是屏幕宽度在小于992px时将456隐藏,不显示,但是如果这样做就会出现bug

<el-col :xs="24" :sm="24" :md="17" :lg="19" :xl="20">123</el-col>
<el-col :xs="0" :sm="0" :md="7" :lg="5" :xl="4" >456</el-col>

完整得例子

新建一个demo.html文件内容如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>测试页面</title>
    <!-- cdn引入ElementUI样式 -->
    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
    <style> * { 
     margin: 0; padding: 0; } .myclass1 { 
     height: 200px; background-color: slategray; } .myclass2 { 
     height: 200px; background-color: #867090; } </style>

</head>
<body>
<div id="app">
    <el-row>
        <el-col :xs="24" :sm="24" :md="17" :lg="19" :xl="20" class="myclass1">123</el-col>
        <el-col :xs="0" :sm="1" :md="7" :lg="5" :xl="4" class="myclass2" >456</el-col>
    </el-row>

</div>

<!--cdn引入ElementUI组件必须先引入Vue-->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<!-- cdn引入ElementUI组件库 -->
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
<script type="text/javascript"> const vm = new Vue({ 
     // 配置对象 options // 配置选项(option) el: '#app', // element: 指定用vue来管理页面中的哪个标签区域 data: { 
     screenWidth: 992 }, }) </script>
</body>
</html>

会发现456不会显示,虽然宽度有了但是内容456却不显示
在这里插入图片描述

将sm得值设置非0则正常,但是屏幕宽度为sm时会导致456被挤下去如下在这里插入图片描述

解决方法,通过vue得v-if或者v-show

首先、将sm不要设置为0,例如设置为1
其次、为了解决这个sm=1的问题,通过js获取屏幕宽度,当屏幕<992时就不显示即可

当屏幕小于992px时将其隐藏掉

<el-row>
    <el-col :xs="24" :sm="24" :md="17" :lg="19" :xl="20" class="myclass1">123</el-col>
    <el-col :xs="0" :sm="1" :md="7" :lg="5" :xl="4" class="myclass2" v-show="screenWidth >= 992">456</el-col>
</el-row>

以及通过vue获取屏幕宽度

const vm = new Vue({ 
    // 配置对象 options
    // 配置选项(option)
    el: '#app',  // element: 指定用vue来管理页面中的哪个标签区域
    data: { 
   
        screenWidth: 992
    },
    mounted(){ 
   
        const that = this
        window.onresize = () => { 
   
            return (() => { 
   
                window.screenWidth = document.body.clientWidth
                that.screenWidth = window.screenWidth
            })()
        }
    }
})

效果
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190289.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 五个优秀的硬盘检测工具[通俗易懂]

    五个优秀的硬盘检测工具[通俗易懂]虽然硬盘价格不断大幅跳水,但它显然一直是我们最宝贵的资产,硬盘一旦损坏,所有下载的音乐、铃声、软件,工作的文档、报表、模型、图片都不复存在。本文介绍五个最好的硬盘检测工具,它们各有特色,有的可以监视局

    2022年7月4日
    41
  • 关于矩阵的归一化

    关于矩阵的归一化最近在看Yang大牛稀疏表示论文的代码,发现里面很多的操作的用到了矩阵的列归一化,这里谈一谈列归一化的实现,以及其带来的好处。矩阵的列归一化,就是将矩阵每一列的值,除以每一列所有元素平方和的绝对值,这样做的结果就是,矩阵每一列元素的平方和为1了。举个例子,矩阵[1,2,3]’,将其归一化的结果就是[0.2673,0.5345,0.8018]。其平方和就为1了。Y

    2022年10月11日
    1
  • Qt浅谈之七:抽奖软件(可显示图片和姓名)

    Qt浅谈之七:抽奖软件(可显示图片和姓名)使用Qt设计的一个抽奖软件,可以显示抽奖人员姓名和图片(无图片时只显示姓名),在Windows下和Linux下都能打包运行。可以设置图片滚动的频率。

    2022年10月21日
    2
  • webpack 版本冲突详细原因分析及解决办法「建议收藏」

    webpack 版本冲突详细原因分析及解决办法「建议收藏」本项目使用vue/cli-4构建,在安装完less-loader后,npmrunserve时候报错,原因是webpack版本冲突报错信息Error:Rulecanonlyhaveoneresourcesource(providedresourceandtest+include+exclude)in{“exclude”:[null],“use”:[{“loader”:“/Users/truezir_tech_team/WebstormProject

    2022年8月10日
    48
  • vc 识别移动硬盘 U盘,本地硬盘[通俗易懂]

    vc 识别移动硬盘 U盘,本地硬盘[通俗易懂]vc 识别移动硬盘 U盘,本地硬盘

    2022年4月20日
    41
  • MODIS 数据产品预处理[通俗易懂]

    MODIS 数据产品预处理[通俗易懂]MODIS数据产品预处理1MCTK重投影第一步:安装ENVI的MCTK扩展工具解压压缩包,将其中的mctk.sav与modis_products.scsv文件复制到如图所示,相应的ENVI安装路径中去。第二步:打开ENVI5.3标准版如图所示在右边的工具栏处打开最下方的Extensions工具扩展包。可以看到安装的处理工具如图所示。鼠标左键双击打开其中的m…

    2022年5月29日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号