• uni-app 使用 scss 实现推荐标签区域显示效果


    效果图

    1. <view class="tag-box">
    2. <view class="tag-tip">
    3. <view>店家view>
    4. <view>推荐view>
    5. view>
    6. view>

    方法一

    只需修改 $tagFontSize(字体大小) 即可

    1. /* 推荐标签区域 */
    2. .tag-box {
    3. $tagFontSize: 26; // 字体大小(改变字体大小即可更改总体大小)
    4. $differ: -3; // 差值与字体大小相关(20[0] 22[-4] 24[-4] 26[-3] 28[-3] 30[-3])
    5. $tagFontColor: #fff; // 字体颜色
    6. $tagBgColor: #de1737; // 总体背景
    7. $tagPaddingUpAndDown: 10; // 上下内边距
    8. $tagPaddingLeftAndRight: 15; // 左右内边距
    9. $tagBorderRadius: 8rpx; // 圆角大小
    10. $tagBeforeTop: floor($tagFontSize / 0.75) * 2 + $differ + $tagPaddingUpAndDown * 2 + rpx;
    11. $tagBeforeBorderTop: $tagFontSize + rpx;
    12. $tagBeforeBorderSide: $tagFontSize + $tagPaddingLeftAndRight + rpx;
    13. .tag-tip {
    14. position: absolute;
    15. top: 0;
    16. left: 0;
    17. display: flex;
    18. align-items: center;
    19. justify-content: center;
    20. flex-direction: column;
    21. color: $tagFontColor;
    22. font-size: $tagFontSize + rpx;
    23. padding: $tagPaddingUpAndDown + rpx $tagPaddingLeftAndRight + rpx;
    24. background: $tagBgColor;
    25. border-radius: $tagBorderRadius;
    26. font-weight: 700;
    27. }
    28. .tag-tip::before {
    29. content: "";
    30. position: absolute;
    31. top: $tagBeforeTop;
    32. left: 0;
    33. width: 0;
    34. height: 0;
    35. border-top: solid $tagBeforeBorderTop $tagBgColor;
    36. border-right: solid $tagBeforeBorderSide transparent;
    37. border-left: solid $tagBeforeBorderSide transparent;
    38. border-radius: $tagBorderRadius;
    39. }
    40. }

    方法二

    需要修改 $tagSize(总体大小) 与 $tagFontSize(字体大小) 的值

    1. /* 推荐标签区域 */
    2. .tag-box {
    3. $tagSize: 90; // 总体大小(只调整大小只需改 $tagSize 和 $tagFontSize 即可)
    4. $tagFontSize: 26rpx; // 字体大小(只调整大小只需改 $tagSize 和 $tagFontSize 即可)
    5. $tagFontColor: #fff; // 字体颜色
    6. $tagBgColor: #de1737; // 总体背景
    7. $tagBorderRadius: 8rpx; // 圆角大小
    8. $tagWidth: $tagSize - 5;
    9. $tagHeight: $tagSize;
    10. $tagPadding: $tagSize / 10 + rpx;
    11. $tagBeforeTop: $tagSize - 4 + rpx;
    12. $tagBeforeBorderTop: $tagSize / 4 + 5 + rpx;
    13. $tagBeforeBorderSide: $tagWidth / 2 + rpx;
    14. .tag-tip {
    15. position: absolute;
    16. top: 0;
    17. left: 0;
    18. display: flex;
    19. align-items: center;
    20. justify-content: center;
    21. flex-wrap: wrap;
    22. width: $tagWidth + rpx;
    23. height: $tagHeight + rpx;
    24. color: $tagFontColor;
    25. font-size: $tagFontSize;
    26. padding: $tagPadding 0;
    27. background: $tagBgColor;
    28. border-radius: $tagBorderRadius;
    29. font-weight: 700;
    30. }
    31. .tag-tip::before {
    32. content: "";
    33. position: absolute;
    34. top: $tagBeforeTop;
    35. left: 0;
    36. width: 0;
    37. height: 0;
    38. border-top: solid $tagBeforeBorderTop $tagBgColor;
    39. border-right: solid $tagBeforeBorderSide transparent;
    40. border-left: solid $tagBeforeBorderSide transparent;
    41. border-radius: $tagBorderRadius;
    42. }
    43. }
  • 相关阅读:
    微搭低代码中实现增删改查
    java: 读取snakeyaml-1.26.jar各种jar包时出错; error in opening zip file
    Qt / Qt Quick程序打包的一些坑 (三)
    判断船进去倾倒区次数
    threejs开发太阳系案例
    Linux系统使用宝塔面板安装MySQL服务并实现公网远程访问本地数据库【内网穿透】
    Linux网络配置详解
    制造业SRM管理系统供应商全方位闭环管理,实现采购寻源与流程高效协同
    常识判断 --- 党史
    爬虫介绍及举例
  • 原文地址:https://blog.csdn.net/AdminGuan/article/details/133271981