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


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实现一个div设置多张背景图片及background-image属性实例演示
Aug 10 HTML / CSS
CSS3图片旋转特效(360/60/-360度)
Oct 10 HTML / CSS
使用CSS3设计地图上的雷达定位提示效果
Apr 05 HTML / CSS
animation和transition的区别
Oct 12 HTML / CSS
html5 桌面提醒:Notifycations应用介绍
Nov 27 HTML / CSS
2014年圣诞节倒计时网页的制作过程
Dec 05 HTML / CSS
使用phonegap操作数据库的实现方法
Mar 31 HTML / CSS
HTML5 Blob对象的具体使用
May 22 HTML / CSS
css animation配合SVG制作能量流动效果
Mar 24 HTML / CSS
关于flex 上下文中自动 margin的问题(完整例子)
May 20 HTML / CSS
html5表单的required属性使用
Jul 07 HTML / CSS
CSS Transition通过改变Height实现展开收起元素
Aug 07 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分页类代码
2013/04/02 PHP
php环境套包 dedeampz 伪静态设置示例
2014/03/26 PHP
深入理解PHP中的global
2014/08/19 PHP
PHP判断IP并转跳到相应城市分站的方法
2015/03/25 PHP
laravel中的错误与日志用法详解
2016/07/26 PHP
PHP设计模式之适配器模式原理与用法分析
2018/04/25 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
2018/06/13 PHP
文本框倒叙输入让输入框的焦点始终在最开始的位置
2014/09/01 Javascript
Javascript基础教程之JavaScript语法
2015/01/18 Javascript
jQuery实现带滚动线条导航效果的方法
2015/01/30 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
2015/04/01 Javascript
JS实现模拟风力的雪花飘落效果
2015/05/13 Javascript
JavaScript编写带旋转+线条干扰的验证码脚本实例
2016/05/30 Javascript
js操作DOM--添加、删除节点的简单实例
2016/07/08 Javascript
JS库之Three.js 简易入门教程(详解之一)
2017/09/13 Javascript
Vue实战之vue登录验证的实现代码
2017/10/31 Javascript
vue页面跳转后返回原页面初始位置方法
2018/02/11 Javascript
详解webpack的clean-webpack-plugin插件报错
2020/10/16 Javascript
基于JavaScript实现轮播图效果
2021/01/02 Javascript
Python中的迭代器漫谈
2015/02/03 Python
Python 获取项目根路径的代码
2019/09/27 Python
解决Python中回文数和质数的问题
2019/11/24 Python
Python连接Oracle之环境配置、实例代码及报错解决方法详解
2020/02/11 Python
Betsey Johnson官网:妖娆可爱的连衣裙及鞋子、手袋和配件
2016/12/30 全球购物
英国家喻户晓的折扣商场:TK Maxx
2017/05/26 全球购物
香港现代设计家具品牌:Ziinlife Furniture
2018/11/13 全球购物
美国气象仪器、花园装饰和墙壁艺术商店:Wind & Weather
2019/05/29 全球购物
如何理解transaction事务的概念
2015/05/27 面试题
最新创业融资计划书
2014/01/19 职场文书
《美丽的南沙群岛》教学反思
2014/04/27 职场文书
2014年施工员工作总结
2014/11/18 职场文书
python 如何用map()函数创建多线程任务
2021/04/07 Python
Python Pandas pandas.read_sql函数实例用法
2021/06/21 Python
浅谈resultMap的用法及关联结果集映射
2021/06/30 Java/Android
人民币符号
2022/02/17 杂记
python playwrigh框架入门安装使用
2022/07/23 Python