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


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实现图片翻牌特效
Mar 10 HTML / CSS
CSS3中线性颜色渐变的一些实现方法
Jul 14 HTML / CSS
2分钟教你实现环形/扇形菜单(基础版)
Jan 15 HTML / CSS
巧用 CSS3的webkit-box-reflect 倒影实现各类动效
Mar 05 HTML / CSS
HTML5使用Audio标签实现歌词同步的效果
Mar 17 HTML / CSS
基于 HTML5 WebGL 实现的垃圾分类系统
Oct 08 HTML / CSS
用HTML5.0制作网页的教程
May 30 HTML / CSS
HTML5 Web Workers之网站也能多线程的实现
Apr 24 HTML / CSS
html5中valid、invalid、required的定义
Feb 21 HTML / CSS
HTML5本地存储之IndexedDB
Jun 16 HTML / CSS
快速创建 HTML5 Canvas 电信网络拓扑图的示例代码
Mar 21 HTML / CSS
将SVG图引入到HTML页面的实现
Sep 20 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 insert语法详解
2008/06/07 PHP
详解PHP 二维数组排序保持键名不变
2019/03/06 PHP
动态调用css文件——jquery的应用
2007/02/20 Javascript
JavaScript 实现鼠标拖动元素实例代码
2014/02/24 Javascript
详谈jQuery中的this和$(this)
2014/11/13 Javascript
node.js中的fs.existsSync方法使用说明
2014/12/17 Javascript
浅谈利用JavaScript进行的DDoS攻击原理与防御
2015/06/04 Javascript
JavaScript+html5 canvas绘制的圆弧荡秋千效果完整实例
2016/01/26 Javascript
谈一谈javascript中继承的多种方式
2016/02/19 Javascript
JQuery遍历元素的后代和同胞实现方法
2016/09/18 Javascript
Vue 多层组件嵌套二种实现方式(测试实例)
2017/09/08 Javascript
小程序云开发初探(小结)
2018/10/24 Javascript
vue实现微信分享功能
2018/11/28 Javascript
javascript实现倒计时效果
2020/02/17 Javascript
angular中的post请求处理示例详解
2020/06/30 Javascript
JavaScript实现图片合成下载的示例
2020/11/19 Javascript
[02:07]DOTA2超级联赛专访BBC:难忘网吧超神经历
2013/06/09 DOTA
Python的Flask框架与数据库连接的教程
2015/04/20 Python
Python实现的数据结构与算法之快速排序详解
2015/04/22 Python
在python下使用tensorflow判断是否存在文件夹的实例
2019/06/10 Python
python处理document文档保留原样式
2019/09/23 Python
使用phonegap查找联系人的实现方法
2017/03/31 HTML / CSS
Philosophy美国官网:美国美容品牌
2016/08/15 全球购物
英国最大的老式糖果店:A Quarter Of
2017/04/08 全球购物
波兰运动鞋网上商店:Distance.pl
2020/07/30 全球购物
存储过程和函数的区别
2013/05/28 面试题
销售会计工作职责
2013/12/02 职场文书
将相和教学反思
2014/02/04 职场文书
《圆明园的毁灭》教学反思
2014/02/28 职场文书
幼儿园教师演讲稿
2014/05/06 职场文书
物流管理系毕业生求职信
2014/06/03 职场文书
2014年政风行风工作总结
2014/11/22 职场文书
2015年新教师工作总结
2015/04/28 职场文书
幼儿教师继续教育培训心得体会
2016/01/19 职场文书
再见,2019我们不负使命;你好,2020我们砥砺前行
2020/01/03 职场文书
SQL实现LeetCode(177.第N高薪水)
2021/08/04 MySQL