CSS3田字格列表的样式编写方法


Posted in HTML / CSS onNovember 22, 2018

在很多项目中,需要实现分格展示的功能,中间有灰色分割线,两侧没有。

如图:

CSS3田字格列表的样式编写方法

按照一般的思路,设置好li的宽度,通过nth-of-type(n){}的方式给li标签添加样式。

设置每个li 33.33%的宽度,但当我们添加1px边框时,最右边的内容就被挤了下来。

这时可以通过给父级 ul 添加:before :after 伪类元素来实现。而不占用li的width

当显示3列时,通过给ul 添加:before来实现

CSS

<style>
        ul li{ list-style: none;}
        .mp-list{   
            position: relative;
            overflow: hidden;
            z-index: 0;
            background-color: #fff;
        }        
        .mp-list:before {
            content: '';
            position: absolute;
            width: 33.33%;
            left: 33.33%;
            height: 100%;
            border-left: .02rem solid #ddd;
            border-right: .02rem solid #ddd;
        }
        .mp-list li {
            width: 33.33%;
            height: 2rem;
            line-height: 2rem;
            font-size: .28rem;
            text-align: center;
            border-bottom: .02rem solid #ddd;
            margin-bottom: -1px;
            float: left;
            position: relative;
            z-index: 10;
            color: #212121;
        }
        .mp-list li a {
            color: #212121;
            display: block;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
            font-size: .28rem;
        }
    </style>

HTML

<ul class="mp-list">
    <li><a hybrid-link="" href="" title="">香港</a></li>
    <li><a hybrid-link="" href="" title="">澳门</a></li>
    <li><a hybrid-link="" href="" title="">台湾</a></li>
    <li><a hybrid-link="" href="" title="">曼谷</a></li>
    <li><a hybrid-link="" href="" title="">新加坡</a></li>
    <li><a hybrid-link="" href="" title="">首尔</a></li>
    <li><a hybrid-link="" href="" title="">东京</a></li>
    <li><a hybrid-link="" href="" title="">济州岛</a></li>
    <li><a hybrid-link="" href="" title="">芭堤雅</a></li>
</ul>
当显示4列时,给:after添加样式,注意需要更改li的width、.mp-list:before的位置。
.mp-list:after {
    content: '';
    position: absolute;
    width: 10%;
    left: 75%;
    height: 100%;
    border-left: .02rem solid #ddd;
    border-right: 0;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
利用css3 translate完美实现表头固定效果
Feb 28 HTML / CSS
纯CSS打造(无图像无js)的非常流行的讲话(语音)气泡效果
Dec 28 HTML / CSS
css实例教程 一款纯css3实现的超炫动画背画特效
Nov 05 HTML / CSS
CSS3 文字动画效果
Nov 12 HTML / CSS
HTML5 本地存储 LocalStorage详解
Jun 24 HTML / CSS
HTML5是什么 HTML5是什么意思 HTML5简介
Oct 26 HTML / CSS
html5指南-1.html5全局属性(html5 global attributes)深入理解
Jan 07 HTML / CSS
简单html5代码获取地理位置
Mar 31 HTML / CSS
HTML5 拖放功能实现代码
Jul 14 HTML / CSS
基于HTML5陀螺仪实现ofo首页眼睛移动效果的示例
Jul 31 HTML / CSS
Adobe Html5 Extension开发初体验图文教程
Nov 14 HTML / CSS
元素水平垂直居中的方式
Mar 31 HTML / CSS
纯css3实现思维导图样式示例
Nov 01 #HTML / CSS
CSS3 Flex 弹性布局实例代码详解
Nov 01 #HTML / CSS
CSS3 创建网页动画实现弹跳球动效果
Oct 30 #HTML / CSS
css3实现椭圆轨迹旋转的示例代码
Oct 29 #HTML / CSS
纯css3实现宠物小鸡实例代码
Oct 08 #HTML / CSS
使用纯 CSS 创作一个脉动 loader效果的源码
Sep 28 #HTML / CSS
利用CSS3动画实现圆圈由小变大向外扩散的效果实例
Sep 10 #HTML / CSS
You might like
说说PHP的autoLoad自动加载机制
2012/09/27 PHP
WordPress中邮件的一些修改和自定义技巧
2015/12/15 PHP
Laravel监听数据库访问,打印SQL的例子
2019/10/24 PHP
PHP实现限制域名访问的实现代码(本地验证)
2020/09/13 PHP
JQuery入门——用bind方法绑定事件处理函数应用介绍
2013/02/05 Javascript
用javascript为页面添加天气显示实现思路及代码
2013/12/02 Javascript
PHP 数组current和next用法分享
2015/03/05 Javascript
js同源策略详解
2015/05/21 Javascript
JS响应鼠标点击实现两个滑块区间拖动效果
2015/10/26 Javascript
Node.js的环境安装配置(使用nvm方式)
2016/10/11 Javascript
JS 实现Base64编码与解码实例详解
2016/11/07 Javascript
Vue.js结合Ueditor富文本编辑器的实例代码
2017/07/11 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
2017/11/08 jQuery
node thread.sleep实现示例
2018/06/20 Javascript
微信小程序实现左侧滑栏过程解析
2019/08/26 Javascript
小程序自定义模板实现吸顶功能
2020/01/08 Javascript
vue 通过base64实现图片下载功能
2020/12/19 Vue.js
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
windows下cx_Freeze生成Python可执行程序的详细步骤
2018/10/09 Python
Python变量访问权限控制详解
2019/06/29 Python
tensorflow模型转ncnn的操作方式
2020/05/25 Python
python编写softmax函数、交叉熵函数实例
2020/06/11 Python
python如何进入交互模式
2020/07/06 Python
python 解决Windows平台上路径有空格的问题
2020/11/10 Python
用python查找统一局域网下ip对应的mac地址
2021/01/13 Python
利用纯CSS3实现文字向右循环闪过效果实例(可用于移动端)
2017/06/15 HTML / CSS
韩国休闲女装品牌网站:ANAIS
2016/08/24 全球购物
某/etc/fstab文件中的某行如下: /dev/had5 /mnt/dosdata msdos defaults,usrquota 1 2 请解释其含义
2013/09/18 面试题
sort命令的作用和用法
2012/11/04 面试题
九年级体育教学反思
2014/01/23 职场文书
《厄运打不垮的信念》教学反思
2014/04/13 职场文书
地质工程专业毕业生求职信
2014/08/08 职场文书
Go使用协程交替打印字符
2021/04/29 Golang
Python一行代码实现自动发邮件功能
2021/05/30 Python
Python使用DFA算法过滤内容敏感词
2022/04/22 Python
pt-archiver 主键自增
2022/04/26 MySQL