《mui学习笔记》:自定义选项卡

准备工作
  1. mui模板
  2. IDE:HBuilder
分析
  1. 依据mui原有的实现,自定义选项卡风格,即满足了项目的需求,也达到熟悉mui的目的。
  2. 对mui css做式样调整
开始

先看自定义后的选项卡 效果:


自定义

原生的mui选项卡效果:


顶部选项卡-可左右拖动

html5页面代码如下:

<body>
    <div id="slider" class="mui-slider">
        <div id="sliderSegmentedControl" class="mui-slider-indicator mui-segmented-control mui-segmented-control-inverted">
            <div class="block-style">
                <div class="control-item-inline"><a class="mui-control-item mui-active" href="#item1mobile">支付宝</a></div>
                <div class="control-item-inline"><a class="mui-control-item" href="#item2mobile">口碑</a></div>
                <div class="control-item-inline"><a class="mui-control-item" href="#item3mobile">朋友</a></div>
                <div class="control-item-inline"><a class="mui-control-item" href="#item4mobile">我的</a></div>
            </div>
        </div>
        
        <!-- 进度条 -->
        <div class="block-style">
            <div id="sliderProgressBar" class="mui-slider-progress-bar mui-col-xs-3" style="margin-top: -6px;">
                <div class="green-ball"></div>
            </div>
        </div>

        <div class="mui-slider-group">
            <!-- 支付宝 -->
            <div id="item1mobile" class="mui-slider-item mui-control-content mui-active"><div>div1</div></div>
            <!-- 口碑 -->
            <div id="item2mobile" class="mui-slider-item mui-control-content"><div>div2</div></div>
            <!-- 朋友 -->
            <div id="item3mobile" class="mui-slider-item mui-control-content"><div>div3</div></div>
            <!-- 我的 -->
            <div id="item4mobile" class="mui-slider-item mui-control-content"><div>div4</div></div>
        </div>
    </div>
</body>

css式样主要部分:

.green-ball {
    width: 10px;
    height: 10px;
    background-color: #FF0055;
    border-radius: 50%;
    margin-left: auto;
    margin-right: auto;
}

.block-style {
    width:60%;
    margin-left: auto;
    margin-right: auto;
}

.control-item-inline {
    width:25%;
    display:inline-block;
    float: left;
}

.mui-control-content {
    min-height: 300px;
}

比较两幅效果图可以看出,mui的选项卡和切换时的滚动条长度都是按页面总长度的比例计算得到的,为了实现自定义的效果,需要把原有的这部分样式改写。
同时,为了让选项卡向页面中间靠拢,可以设置以下css:

.block-style {
   width: 60%;               /* 选项卡占页面的比例 */
   margin-left: auto;     /* 居中 */
   margin-right: auto;   /* 居中 */
}

这样的话,选项卡和滚动条的宽度都是可指定的了。

另外,图中红色小圆球的也是在原有基础上改写的,思路是原有的滚动条占位允许其存在,但把小球的位置设到每段滚动条的中间。

注:mui的bug

*
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;

    -webkit-user-select: none;

    outline: none;

    -webkit-tap-highlight-color: transparent;
    -webkit-tap-highlight-color: transparent;
}

-webkit-user-select: none;会导致ios上input输入框获取不到焦点

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,706评论 1 92
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,893评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,782评论 4 61
  • 《爱德华的奇妙之旅》是美国作家凯特·迪卡米洛写的儿童故事,曾获得过“波士顿全球号角书金奖”,故事相当感人。 爱德华...
    珊安阅读 3,567评论 0 3
  • 我是一个害怕别人觉得我这不好,那不好的女孩,我是一个不知道如何跟他人相处的女孩,我是一个害怕我对他人说他的问题反而...
    蝶筱璇阅读 1,427评论 6 5

友情链接更多精彩内容