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>
相关推荐
到底起什么网名才能不重名15 小时前
使用各种CSS美化网页
前端·css·vscode·bootstrap·html
sunbyte16 小时前
50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | ContentPlaceholder(背景占位)
前端·javascript·css·vue.js·tailwindcss
码哥DFS19 小时前
Flex布局原理
前端·css·css3
小飞悟1 天前
别再只会用 px 了!移动端适配必须掌握的 CSS 单位
前端·css·设计
晴殇i1 天前
前端内容保护:如何有效防止用户复制页面内容?
前端·javascript·css
Liudef062 天前
2048小游戏实现
javascript·css·css3
小桥风满袖2 天前
Three.js-硬要自学系列38之专项学习缓冲几何体
前端·css·three.js
Hilaku2 天前
深入CSS层叠的本质:@layer如何优雅地解决样式覆盖与!important滥用问题
前端·css·html
每天开心2 天前
深入理解 CSS 选择器:从基础到高级
css·html·ai编程
撰卢2 天前
如何提高网站加载速度速度
前端·javascript·css·html