美文网首页
H5知识点

H5知识点

作者: th先生 | 来源:发表于2023-03-22 11:31 被阅读0次

    1、让小喇叭上下居中


    WechatIMG24.png
    父元素display: flex; align-item: center;
    或者给喇叭设置:vertical-align: middle; margin-top: -1px;
    

    2、当span与块级元素处于同一行时,span总是会靠下,无法同时居中
    原因在于:

    span一般默认按照块级元素的下基准线对齐
    

    解决方法:

    span添加样式vertical-align: top
    

    3、CSS样式中的 & 是什么作用

    .box {
       &:before {
            bg-color: #333;
        }
    }
    

    解析:
    & 表示在嵌套层次中回溯一层,即
    &:before相当于.box:before
    &:after相当于.box:after
    :before和:after是CSS中的伪元素,在这里分别表示为在使用box类的元素前面和后面插入指定内容

    4、@mixin 混入的定义与引入,可以传参,也可不传。 sass语法糖

    mixin定义(使用@mixin定义):
    @mixin hexagon-generator($hexagon-width, $factor, $border-radius){
      display: inline-block;
      border-radius: 50%;
      width: ($hexagon-width + $border-radius) * $factor;
      height: ($hexagon-width + $border-radius) * $factor;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    
    .hexagon-shape {
        @include hexagon-generator(88rpx, 1, 8rpx);
    }
    
    使用
    .hexagon-shape {
        display: inline-block;
        border-radius: 50%;
        width: (88rpx + 8rpx) * 1;
        height: (88rpx + 8rpx) * 1;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    

    5、在定位中 我们通过top right bottom left 这四个属性决定定位元素的位置。

    (1)相对定位:position : relative
    在相对定位中,定位元素是根据自己原本所在位置进行定位,相对定位不会脱离文档流,在文档流中不会影响其他元素,偏移量根据给定的值,值可以为负数;

    • top 数值越大越往下 顶部与原位置差
    • bottom 数值越大越往上 底部与原位置差
    • left 数值越大越往右 左边与原位置差
    • ight 数值越大越往左 右边与原位置差
      特点 占原位置,在文档流中占位置。

    (2)绝对定位 :position:absolute
    绝对定位中,定位依据是定位元素的父级,直到找到body元素,绝对定位的元素会脱离文档流,行内可以设置宽高,块元素不独占一行,由内容撑开宽高;

    *top 数值越大越往下 顶部与定位父级的顶部之差
    *bottom 数值越大越往上 底部与定位父级的底部之差
    *left 数值越大越往右 左边与定位父级的左边之差
    *right 数值越大越往左 右边与定位父级的右边之差
    特点 脱离文档流

    (3)固定定位:position:fixed
    根据浏览器窗口的位置和大小进行定位,元素的位置在屏幕内容滚动时不会改变位置,固定定位的元素会移出文档流;

    *top 根据窗口的上边进行定位
    *bottom 根据窗口的下边进行定位
    *left 根据窗口的左边进行定位
    *right 根据窗口的右边进行定位

    6、本地配置localhost

    sudo vi /etc/hosts
    配置添加:
    127.0.0.1   localhost
    

    7、偶然发现关闭node服务之后,再起启动,一直启动不了,提示端口占用
    Error: listen EADDRINUSE: address already in use :::3333
    解决办法:
    终端输入 sudo lsof -i:端口号(端口号换成你的),查看到被占用PID后,再输入sudo kill -9 pid(pid换成上一步查看的数据)即可杀死进程

    8、下载音频文件
    这里需要注意,这种方法下载的是浏览器不能识别的文件,比如.aac音频。 如果是能识别的.wav,则会打开新的窗口进行播放。
    如果需要直接下载,就必需要指定文件名

    // 下载音频文件
        downloadAudio(filePath, fileName) {
          fetch(filePath)
            .then((res) => res.blob())
            .catch(() => {
              window.open(filePath, "target");
            })
            .then((blob) => {
              const a = document.createElement("a");
              document.body.appendChild(a);
              a.style.display = "none";
              // 使用获取到的blob对象创建的url
              const url = window.URL.createObjectURL(blob);
              a.href = url;
              // 指定下载的文件名,不指定就根据上传名直接下载
              a.download = fileName;
              a.click();
              document.body.removeChild(a);
              // 移除blob对象的url
              window.URL.revokeObjectURL(url);
            })
            .catch(() => {
              console.log("下载异常,请稍后重试");
            });
        },
    

    9、tabbar 的设置,兼容iOS12以下

          display: flex;
          align-items: center;
          justify-content: space-around;   // space-evenly不兼容
    

    相关文章

      网友评论

          本文标题:H5知识点

          本文链接:https://www.haomeiwen.com/subject/eaiekdtx.html