本文主要是介绍H5: 按钮的点击热区,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
简介
按钮,尤其是手机端使用的页面按钮,很需要热区,避免用户点击困难。
分析
1.不改变原有的样式
2.扩大可点击范围
具体实现
<template><div class="iconBtnBox"><div:class="props.widthHeight ? 'iconBtnFixed' : 'iconBtnPadding'":style="{'--hotPadding': `-${props.hotPadding}px`,'--widthHeight': `${props.widthHeight}px`}"><slot /></div></div>
</template><script setup lang="ts">import { withDefaults, defineProps } from 'vue'const props = withDefaults(defineProps<{// hotPadding 与 widthHeight 选择传递一个即可,或都不传/*** 自适应放大的热区扩大值(单位是px)*/hotPadding?: number/*** 固定的热区宽高(单位是px)*/widthHeight?: number}>(),{hotPadding: 5})
</script><style scoped lang="less">.iconBtnBox {position: relative;&:active {opacity: 0.6;}}.iconBtnFixed::before {content: '';width: var(--widthHeight);height: var(--widthHeight);position: absolute;top: 50%;right: 50%;transform: translate(50%, -50%);}.iconBtnPadding::before {content: '';position: absolute;top: var(--hotPadding); /* 增大点击热区的顶部 */right: var(--hotPadding); /* 增大点击热区的右侧 */bottom: var(--hotPadding); /* 增大点击热区的底部 */left: var(--hotPadding); /* 增大点击热区的左侧 */}
</style>
最后
觉得有用的朋友请用你的金手指点一下赞,或者评论留言一起探讨技术!
这篇关于H5: 按钮的点击热区的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!