小程序开发总结04 - 特殊样式处理

小程序开发总结04 - 特殊样式处理

1. 消除btn阴影

微信小程序中的button组件有特定的css,背景可用background:none;去掉,但边框直接用border:none;无法去除

解决方法:

使用 button::after{ border: none; }

button::after{ 
	border: none; 
}

2. 超出省略号处理

/* 单行省略号 */
.text {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
/* 多行省略号 */
.textarea {
    display: -webkit-box;
    word-break: break-all;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2;
}

3. 特殊布局 - 固定高度内容容器适配

实现部分高度固定,scrollview高度自适应,且能够下拉刷新上拉加载

05.jpg
<view>
    ... 固定高度200rpx
    <scroll-view 
    	style="height:{{srollHeight}}px;" 
    	scroll-y="true"  
    	scroll-with-animation="true" 
    	enable-back-to-top="true"
        scroll-top="{{scrollTop}}" 
        bindscrolltolower="bindDownLoad" 
        bindscroll="scroll" 
        bindscrolltoupper="refresh" 
        lower-threshold="200"
    >
        items...
    </scroll-view>
    <loading hidden="{{hideLoding}}">
        加载中...
    </loading>
</view>

在js中处理高度

Page({
    data: {
        scrollTop: 0,
        srollHeight: 0,
        hideLoding: true,
    },
    onLoad(){
        wx.getSystemInfo({
            success: res => {
            	// 小程序宽度固定为750rpx,可以计算出固定部分的高度200rpx对应的像素值
                this.setData({
                    srollHeight: res.windowHeight - res.windowWidth / 750 * 200
                });
            }
        })
    },
	getList() {
		...
	},
    bindDownLoad: function () {
        this.getList();
    },
    scroll: function (event) {
        // this.setData({
        //     scrollTop: event.detail.scrollTop
        // });  
    },
    refresh: function (event) {
        console.log("refresh");
    }
})

4. 模态框

小程序本身没有模态框组件,需要自己实现

06.jpg
<view class="modal" hidden="{{!showModal}}">
    <view class="modal-content">
    	...content
    </view>
    <view class="modal-close" bindtap="hideModal">x</view>
</view>

wxss样式

.modal {
    position:fixed;
    width:100%;
    height:100%;
    top:0;
    left: 0;    
    background:rgba(0,0,0,0.4);
    overflow: hidden;
    z-index: 999;
}
.modal .modal-content{
    position:relative;
    width: 90%;
    margin:35% auto;
    overflow: hidden;
    background-color: #fff;
    height: 550rpx;
    overflow-y: auto;
}
/* 圆形关闭按钮 */
.modal .modal-close {
    width: 100rpx;
    height:100rpx;
    font-size:70rpx;
    color:#bababa;
    transform:translate(-50%,-50%);
    bottom:90rpx;
    position:absolute;
    left:50%;
    text-align:center;
    border:3rpx solid #bababa;
    border-radius:100%;
    vertical-align:middle;
    line-height:90rpx;
}
sign

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏闻道于事

js登录滑动验证,不滑动无法登陆

js的判断这里是根据滑块的位置进行判断,应该是用一个flag判断 <%@ page language="java" contentType="text/html...

6568
来自专栏一个会写诗的程序员的博客

Spring Reactor 项目核心库Reactor Core

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactiv...

2102
来自专栏一个爱瞎折腾的程序猿

sqlserver使用存储过程跟踪SQL

USE [master] GO /****** Object: StoredProcedure [dbo].[sp_perfworkload_trace_s...

1950
来自专栏杨龙飞前端

scrollto 到指定位置

2474
来自专栏落花落雨不落叶

canvas画简单电路图

58011
来自专栏飞扬的花生

jsencrypt参数前端加密c#解密

      写程序时一般是通过form表单或者ajax方式将参数提交到服务器进行验证,如何防止提交的请求不被抓包后串改,虽然无法说绝对安全却给非法提交提高了难度...

3849
来自专栏hbbliyong

WPF Trigger for IsSelected in a DataTemplate for ListBox items

<DataTemplate DataType="{x:Type vm:HeaderSlugViewModel}"> <vw:HeaderSlug...

4054
来自专栏魂祭心

原 canvas绘制clock

3984
来自专栏芋道源码1024

熔断器 Hystrix 源码解析 —— 断路器 HystrixCircuitBreaker

本文主要基于 Hystrix 1.5.X 版本 1. 概述 2. HystrixCircuitBreaker 3. HystrixCircuitBreaker....

5257
来自专栏张善友的专栏

Mix 10 上的asp.net mvc 2的相关Session

Beyond File | New Company: From Cheesy Sample to Social Platform Scott Hansel...

2517

扫码关注云+社区