elment-ui部分ui组件在移动端也能实现自适应

javascript 好久没更新了 ,来更新一下自己的笔记

最近有移动端的项目迁移到pc端,pc端那一套用的是element-ui的后台框架,所以难免有一些样式不兼容的问题,之前很久的时候也处理过这些,但是很久没处理忘了==,所以之后再遇到兼容的会更新到这篇笔记上,供之后翻阅

1. el-dialog

借助css3的媒体查询

@media screen and (min-width: 220px) and (max-width:600px) {
  .el-dialog{
    width: 90% !important;
  }
}
  • 几行css就搞定,不需要去动态的监听获取屏幕宽度啥的,来更改width,这里的意思就是当屏幕宽度小于600px并且大于220px的时候el-dialog设置为90%显示,如果仅仅需要小于某一个值的话用一个and就行,大于某一个值也是一样,改为min-width
    即可。

根据document.body.clientWidth设置width

initWidth() {
  const width = document.body.clientWidth;
  if (width < 600) {
    this.dialogWidth = "90%";
  } else {
    this.dialogWidth = "50%";
  }
},
  • 在mounted中或者created中获取一下宽度给dialog赋值一下就行。
  • 上面的dialog参考自https://blog.csdn.net/qq_31754591/article/details/125403783
  • 主要是借助媒体查询,很方便

2: el-button
这个我直接用的是layout布局,手写div整上去的,
代码如下:

    
      
        
{{ btnText }}

style样式

.bg-purple {
  background: #ff8f04;
}
.grid-content {
  border-radius: 4px;
  min-height: 36px;
  line-height: 36px;
}
.controlClass {
  font-size: 15px;
  font-family: PingFangSC-Medium-, PingFangSC-Medium;
  font-weight: normal;
  text-align: center;
  border-radius:15px;
  cursor: pointer;
}
.color_str{
     background-color: #dddddd;
  }

3:message-box

  • 在移动端显示弹框一直在顶部的问题:(一句代码搞定)

// messageBox的弹框手机样式

  @media screen and (max-width: 750px) {
    .el-message-box {
      width: 80% !important;
    }
  }

目前遇到这三个,之后遇到多更新

你可能感兴趣的:(ui)