小程序实现悬浮按钮的全过程记录


Posted in HTML / CSS onOctober 16, 2021

前言

在日常小程序开发中,我们可能会有这样的需求,将按钮悬浮,不随着页面的滑动而改变位置,例如文章详情页的分享按钮,我想做成悬浮的样子,或者首页设置一个悬浮按钮来实现一些可扩展的功能,既美观又方便实用

实现悬浮按钮我将从两方面进行讲解,一个是实现图片按钮,另一个是将按钮进行悬浮。

图片按钮实现

在小程序提供的button组件中,没有单独将图片设置成按钮的功能,虽然小程序没有天然的组件支持,但是我们可以自己实现这样的效果

先上代码

页面代码

<!--pages/content-detail/content-detail.wxml-->
<button plain='true'   class="circle">
  <image mode='aspectFill' src='/images/icon/collect.png' class='image'></image>
</button>

css样式代码

.circle[plain] {
  padding: 0;
  border: none;
  width: 64rpx;
  height: 64rpx;
}
​
.image {
  width: 64rpx;
  height: 64rpx;
}

circle是按钮的类,image是图片的类

代码很简单,小蛋为大家解释下上面的代码

  • 隐藏按钮的显示
     

我们是要将图片显示出来,按钮包装的是图片,所以要将按钮隐藏,plain='true' 这个属性即可实现。

  • 隐藏按钮的边框
     

除了要隐藏按钮,还需要将其边框进行隐藏,对应的css样式为:border: none ,这里要注意,css的类上一定要加 [plain]
例如 .circle[plain] ,不加的话边框可能不会消失。

  • 图片和按钮对齐
     

图片的大小需要和按钮的大小保持一致,为了做到对齐,button中的css样式要设置padding:0

悬浮按钮实现

图片按钮设置好了,我们就要对其进行悬浮进行实现,要达到悬浮的效果只需要将按钮样式的position设置为fixed即可

.circle[plain] {
  display: flex;
  margin-right: 40rpx;
  right: 0;
  position: fixed;
  bottom: 15%;
  padding: 0;
  border: none;
  width: 64rpx;
  height: 64rpx;
}

position是位置属性,它有许多不同的值,我们来看下官方给出的fixed的定义

不为元素预留空间,而是通过指定元素相对于屏幕视口(viewport)的位置来指定元素位置。元素的位置在屏幕滚动时不会改变。打印时,元素会出现在的每页的固定位置。fixed属性会创建新的层叠上下文。当元素祖先的 transform 属性非 none 时,容器由视口改为该祖先。

悬浮按钮的代码我们就已经完全实现了,我们来看下具体的效果

小程序实现悬浮按钮的全过程记录

总结

整个悬浮按钮的实现其实代码量并不多,主要还是要对css的知识要掌握的更透彻,实现起来就没那么难,悬浮按钮的实现只是一盘小菜

到此这篇关于小程序实现悬浮按钮的文章就介绍到这了,更多相关小程序实现悬浮按钮内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
CSS3制作文字半透明倒影效果的两种实现方式
Aug 08 HTML / CSS
CSS3使用border-radius属性制作圆角
Dec 22 HTML / CSS
CSS3动画和HTML5新特性详解
Aug 31 HTML / CSS
使用HTML5 Canvas API中的clip()方法裁剪区域图像
Mar 25 HTML / CSS
HTML5仿手机微信聊天界面
Mar 18 HTML / CSS
HTML5新增的8类INPUT输入类型介绍
Jul 06 HTML / CSS
浅析border-radius如何兼容IE
Apr 19 HTML / CSS
Web前端页面跳转并取到值
Apr 24 HTML / CSS
如何在CSS中绘制曲线图形及展示动画
May 24 HTML / CSS
HTML中的表单元素介绍
Feb 28 HTML / CSS
css布局巧妙技巧之css三角示例的运用
Mar 16 HTML / CSS
能用CSS实现的就不要麻烦JavaScript了
浅析CSS在DevTools 中架构演变
CSS布局之浮动(float)和定位(position)属性的区别
Sep 25 #HTML / CSS
Canvas绘制像素风图片的示例代码
Canvas如何做个雪花屏版404的实现
使用canvas对video视频某一刻截图功能
Sep 25 #HTML / CSS
使用CSS实现一个搜索引擎的原理解析
You might like
PHP 反射机制实现动态代理的代码
2008/10/22 PHP
php高级编程-函数-郑阿奇
2011/07/04 PHP
Yii数据模型中rules类验证器用法分析
2016/07/15 PHP
区分JS中的undefined,null,&quot;&quot;,0和false
2007/03/08 Javascript
JS getMonth()日期函数的值域是0-11
2010/02/15 Javascript
防止页面被iframe(兼容IE,Firefox火狐)
2010/07/04 Javascript
理解Javascript_07_理解instanceof实现原理
2010/10/15 Javascript
jQuery焦点图切换特效插件封装实例
2013/08/18 Javascript
JS小功能(操作Table--动态添加删除表格及数据)实现代码
2013/11/28 Javascript
JS实现随机乱撞彩色圆球特效的方法
2015/05/05 Javascript
js控制网页前进和后退的方法
2015/06/08 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
2016/09/04 Javascript
angular实现form验证实例代码
2017/01/17 Javascript
JQuery Dialog对话框 不能通过Esc关闭的原因分析及解决办法
2017/01/18 Javascript
XMLHttpRequest对象_Ajax异步请求重点(推荐)
2017/09/28 Javascript
jQuery实现ajax的嵌套请求案例分析
2019/02/16 jQuery
了解javascript中的Dom操作
2019/05/27 Javascript
JavaScript生成一个不重复的ID的方法示例
2019/09/16 Javascript
Vue实现兄弟组件间的联动效果
2020/01/21 Javascript
js实现简单扫雷
2020/11/27 Javascript
JavaScript 实现下雪特效的示例代码
2020/09/09 Javascript
JS如何操作DOM基于表格动态展示数据
2020/10/15 Javascript
[01:02:25]2014 DOTA2华西杯精英邀请赛5 24 NewBee VS VG
2014/05/25 DOTA
[13:38]2015国际邀请赛中国战队出征仪式
2015/05/29 DOTA
[03:39]这就是刀塔,我们是冠军!燃情短片讲述我们的DOTA故事
2019/07/02 DOTA
python基础教程之元组操作使用详解
2014/03/25 Python
举例讲解Python中的死锁、可重入锁和互斥锁
2015/11/05 Python
Django 限制访问频率的思路详解
2019/12/24 Python
使用Python制作新型冠状病毒实时疫情图
2020/01/28 Python
西班牙购买隐形眼镜、眼镜和太阳镜网站:Lentiamo.es
2020/06/11 全球购物
销售自我评价
2013/10/22 职场文书
旅游与酒店管理的自我评价分享
2013/11/03 职场文书
国际贸易毕业生求职信范文
2014/02/21 职场文书
元旦晚会活动总结
2014/07/09 职场文书
护理医院见习报告
2014/11/03 职场文书
电影复兴之路观后感
2015/06/02 职场文书