CSS - 鼠标移入整行高亮显示,适用于会员套餐各参数对比页面(display: table,div 转表格形式)

效果图

可根据基础示例和进阶示例,复制进行改造样式。

如下图所示,本文提供 2 个示例。

基础示例

找个 HTML 页面,一键复制运行。

html 复制代码
<body>
    <h1 style="text-align: center;">基础示例</h1>
    <section class="content">
        <div class="row">
            <div class="cell">张三</div>
            <div class="cell">李四</div>
            <div class="cell">王五</div>
        </div>
        <div class="row">
            <div class="cell">张三</div>
            <div class="cell">李四</div>
            <div class="cell">王五</div>
        </div>
    </section>
</body>

<style>
body {
    background: #eeeeee;
}
/* 根节点 */
.content {
    display: table;
    /*display: table时padding会失效*/
    width: 800px;
    margin: 0 auto;
    background: #fff;
}
/* 每行 */
.row {
    display: table-row;
    /*display: table-row时margin、padding同时失效*/
    /* background: red; */
    text-align: center;
}
.row:hover {/* 这里写鼠标移入时的样式 */
    background: #fff;
    box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
    font-weight: bold;
}
/* 每列 */
.cell {
    display: table-cell;
    /*display: table-cell时margin会失效*/
    padding: 15px;
}
</style>

进阶示例

找个 HTML 页面,一键复制运行。

html 复制代码
<body>
    <h1 style="text-align: center;">进阶示例</h1>
    <section class="content">

        <!-- 头部自定义内容 -->
        <div class="row-hidden">
            <div class="cell">
                <div class="header">
                    <h3>普通会员</h3>
                    <button class="button">立即开通</button>
                    <div style="height: 20px;"></div>
                </div>
            </div>
            <div class="cell">
                <div class="header">
                    <h3>中级会员</h3>
                    <button class="button">立即开通</button>
                    <div style="height: 20px;"></div>
                </div>
            </div>
            <div class="cell">
                <div class="header">
                    <h3>高级会员</h3>
                    <button class="button">立即开通</button>
                    <div style="height: 20px;"></div>
                </div>
            </div>
        </div>
        <!-- END -->

        <!-- 激活高亮区域 -->
        <div class="row">
            <div class="cell">
                <div class="item">
                    [普通会员] 这是第一行
                </div>
            </div>
            <div class="cell">
                <div class="item">
                    [中级会员] 这是第一行
                </div>
            </div>
            <div class="cell">
                <div class="item">
                    [高级会员] 这是第一行
                </div>
            </div>
        </div>
        <div class="row">
            <div class="cell">
                <div class="item">
                    [普通会员] 这是第二行
                </div>
            </div>
            <div class="cell">
                <div class="item">
                    [中级会员] 这是第二行
                </div>
            </div>
            <div class="cell">
                <div class="item">
                    [高级会员] 这是第二行
                </div>
            </div>
        </div>
        <!-- END -->

        <!-- 底部自定义内容 -->
        <div class="row-hidden">
            <div class="cell">
                <div class="bottom">
                    <div style="height: 10px;"></div>
                    <h3>底部内容</h3>
                </div>
            </div>
            <div class="cell">
                <div class="bottom">
                    <div style="height: 10px;"></div>
                    <h3>底部内容</h3>
                </div>
            </div>
            <div class="cell">
                <div class="bottom">
                    <div style="height: 10px;"></div>
                    <h3>底部内容</h3>
                </div>
            </div>
        </div>
        <!-- END -->

    </section>
</body>

<style>
body {
    background: #eeeeee;
}
/* 根节点 */
.content {
    display: table;
    /*display: table时padding会失效*/
    width: 1300px;
    margin: 0 auto;
    border-collapse: collapse;
}
/* 每行 */
.row {
    display: table-row;
    /*display: table-row时margin、padding同时失效*/
    text-align: center;
}
.row-hidden {
    display: table-row;
    /*display: table-row时margin、padding同时失效*/
    text-align: center;
}
.row:hover {/* 这里写鼠标移入时的样式 */
    font-weight: bold;
    box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
    cursor: pointer;
    color: red;
}
/* 每列 */
.cell {
    display: table-cell;
    /*display: table-cell时margin会失效*/
    /* 这行代码是为了侧边留空隙使用,同背景色一致造成的假象 */
    border-right: 10px solid #eeeeee;
}


/* 额外样式 */
.item {
    /* padding */
    background: #fff;
    text-align: left;
    padding-left: 30px;
    padding-right: 30px;
    /* padding-left: 35px; */
    padding-bottom: 10px;
    padding-top: 10px;
}
.header {
    background: #fff;
    padding: 20px;
}
.button {
    width: 90%;
    height: 30px;
}
.bottom {
    background: #fff;
    padding: 20px;
}
</style>
相关推荐
FFF_6345602310 小时前
简单的画板小工具,下载即用
前端·javascript·css
绝世唐门三哥13 小时前
CSS 虚线下划线用法指南:text-decoration 完整解析
前端·javascript·css
DsirNg13 小时前
用一个登录卡片讲清 CSS 盒模型:padding、border 与 box-sizing 到底如何影响布局
css·padding·box-sizing·表单布局·border·css 盒模型·登录卡片
用户059540174461 天前
把 AI Agent 记忆存储验证从 40 分钟手测压到 3 分钟,pytest + Docker 这套组合太顶了
前端·css
用户059540174462 天前
LangChain Memory 测试踩坑实录:用 pytest 自动化回归对话记忆,我折腾了整整一个周末
前端·css
jjw_zyfx2 天前
css vue vite实现闪烁的呼吸效果
javascript·css·vue.js
Mh4 天前
如何使用GSAP实现一个 `pinned` 滚动楼层叙事?
前端·javascript·css
郭wes代码4 天前
纯 CSS+JS 实战:手搓一张支持自定义的通用金色电子奖状(万字详细拆解)
前端·javascript·css
竹枝溪4 天前
从零吃透CSS(一):CSS基础语法与样式美化
前端·css·选择器·前端三剑客
用户059540174465 天前
把AI对话记忆测试从手动比对到Pytest+Redis自动化,验证效率提升了10倍,还顺带揪出3个隐蔽bug
前端·css