网站常用的卡片布局

简介: 网站常用的卡片布局


左图右文

这种布局最常见的

实现思路

  1. 大盒子 里面 套两个 小盒子
  2. 设置大盒子flex 布局
  3. 分别在两个盒子放入 图片 文字 即可

效果

因为设置了媒体响应 当屏幕宽度小于800像素大小 就变成纵向布局

详细代码

Html

 <div class="box">
        <!-- 左图 -->
        <div class="img"></div>
        <!-- 文字 -->
        <div class="text-Content">
            <div class="title">So Like Fun Weekend</div>
            <div class="content">
                Lorem ipsum dolor sit amet consectetur adipisicing elit. Aliquid eligendi vel veritatis debitis minima
                dignissimos nihil incidunt saepe maiores ducimus ex at sequi voluptatum, eaque, alias illo cumque
                assumenda quam?
            </div>
            <!-- 按钮 -->
            <button class="btn">Learn More</button>
        </div>
    </div>

CSS

 @font-face {
            font-family: "站酷酷黑 Regular";
            font-weight: 400;
            src: url("//at.alicdn.com/wf/webfont/pXW6WcZ4aH3n/wrZZ7zVs0VrlZEOKyNJqi.woff2") format("woff2"),
                url("//at.alicdn.com/wf/webfont/pXW6WcZ4aH3n/3fDVYyJQ0o7NFKAX_5-Z0.woff") format("woff");
            font-display: swap;
        }

        * {
            font-family: "站酷酷黑 Regular";
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            width: 100%;
            height: 100vh;
            /* flex 子元素 水平居中对其*/
            display: flex;
            justify-content: center;
            align-items: center;
            /* 渐变色背景 */
            background: linear-gradient(to right, #1565C0, #b92b27);
        }

        .box {
            display: flex;
            width: 65%;
            height: 65%;
            padding: 50px;
        }

        .img {
            flex: 1;
            background: url(./img/3.jpg);
            background-size: cover;
            background-position: center center;
            border-radius: 12px;
            transition: all 1s linear;
        }

        .img:hover {
            filter: saturate(250%);
        }

        .text-Content {
            flex: 1;
            margin-left: 7.4vw;
            overflow: hidden;
        }

        .title {
            font-size: 2rem;
            margin-bottom: 1.3em;
        }

        .content {
            font-size: 1.2rem;
        }

        .btn {
            margin-top: 20%;
            width: 150px;
            height: 50px;
            border-radius: 20px;
            background-color: rgba(0, 0, 0, 0.607);
            color: #ffffffc2;
            transition: all 0.8s;
            cursor: pointer;
            font-size: 1rem;
            border: 0;
        }

        .btn:hover {
            background-color: rgba(255, 255, 255, 0.747);
            color: rgba(0, 0, 0, 0.795);
        }

        @media screen and (max-width: 800px) {
            .box {
                width: 90%;
                height: 100vh;
                flex-direction: column;
            }

            .img {
                margin-bottom: 16px;
            }

            .text-Content {
                font-size: 15px;
                margin-left: 0;
            }

            .title {
                font-size: 1.2rem;
                margin-bottom: 1em;
            }

            .content {
                font-size: 1rem;
            }
        }

悬停图片 显示文本内容

实现思路

  • 只要思想是 使用的 hover + transition + 滤镜
  • hover之后 将图片的光度调低 文字的透明度设置为 1

效果

文字环绕图片

 <div class="main">
        <div class="head">
            <div class="text">
                <div class="title">How Image Beautiful</div>
                <div class="content">Lorem ipsum dolor, sit amet consectetur adipisicing elit. Recusandae maxime

                </div>
            </div>
        </div>


       
        <div class="body">
            <div class="left">
                <div class="icon">Happy</div>
                <div class="content">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque, minima
                    reprehenderit. Consequuntur sed quisquam aliquid vitae quae officiis id voluptates unde voluptas,
                </div>

                <div class="icon">Slow</div>
                <div class="content">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque, minima
                    reprehenderit. Consequuntur sed quisquam aliquid vitae quae officiis id voluptates unde voluptas,
                </div>
            </div>
            <!-- 图片-- 插图  -->
            <div class="middle"></div>
            <!-- 右边 和左边很相似 -->
            <div class="right">
                <div class="icon">Fast</div>
                <div class="content">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque, minima
                    reprehenderit. Consequuntur sed quisquam aliquid vitae quae officiis id voluptates unde voluptas,
                </div>

                <div class="icon">Money</div>
                <div class="content">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque, minima
                    reprehenderit. Consequuntur sed quisquam aliquid vitae quae officiis id voluptates unde voluptas,
                </div>
            </div>
        </div>

        <div class="footer">
            <div class="text">
                <div class="icon">Cool</div>
                <div class="content">
                    Lorem ipsum dolor sit amet consectetur adipisicing elit. Aut rem minus rerum, perspiciatis illum
                    minima,
                </div>
                <button class="btn">Lorem More</button>

            </div>


        </div>
    </div>


  * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            width: 100%;
            height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            background-image: url(./WebSite设计用图//2.jpg);
            background-size: cover;
            background-position: center center;
            border-radius: 20px;
            backdrop-filter: blur(5px)
        }

        .main {
            width: 80%;
            height: 80%;
            /* 添加毛玻璃效果 */
            background-color: rgba(112, 112, 112, 0.5);
            border-radius: 10px;
        }

        /* 总体下来的是三个纵向布局 分别为 头 身体 脚 */
        /* 先从头部开始搭建布局 */
        .head {
            /* head 布局里面又分为标题 和 内容 两个模块 纵向布局  */
            /* 可以参考原型图 得知 是居中水平对其  我们可以flex一下*/
            display: flex;
            justify-content: center;
            align-items: center;

            /* 给个宽高  分别宽 为 父级的 100%* 高 大概是 20%*/
            width: 100%;
            height: 20%;
        }

        .head .text {
            width: 30%;
            height: 100%;
            /* 然后在这个文本盒子里面 包含了标题 和 内容 要水平居中 */
            text-align: center;

        }

        .head .title {
            font-weight: 700;
            font-size: 32px;
            /* 标题 和 内容 要有上下边距 设置margin */
            margin-bottom: 16px;
        }


        /* 下面 我们开始进行 最复杂的一块 就是 中间部分的搭建 */
        /* 我们可以看出来 中间部分 又可以分为 左  中  右 三部分   */
        /* 我们只要依次按照这个顺序 来搭建 就可以了 全程 flex 一把梭 */

        .body {
            display: flex;
            width: 100%;
            height: 50%;

        }

        .left {
            /* 使用flex 布局 调整为 两端对其 */
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            flex: 0.8;
            padding: 16px;
        }

        .left .icon {
            text-align: center;
            font-size: 30px;
            font-weight: 600;
        }

        .left .content {
            font-size: 14px;
        }

        .middle {
            flex: 1;
            /* 设置图片完整展出 */
            background-image: url(./WebSite设计用图//2.jpg);
            background-size: cover;
            background-position: center center;
            border-radius: 20px;

        }

        .right {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            padding: 16px;
            flex: 0.8;
        }

        .right .icon {
            text-align: center;
            font-size: 30px;
            font-weight: 600;
        }

        .right .content {
            font-size: 14px;
        }

        .footer {

            display: flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            height: 20%;
        }

        .footer .text {
            margin-top: 16px;
            width: 30%;
            height: 100%;
            /* 然后在这个文本盒子里面 包含了标题 和 内容 要水平居中 */
            text-align: center;
        }

        .footer .icon {
            font-weight: 700;
            font-size: 32px;
            /* 标题 和 内容 要有上下边距 设置margin */
            margin-bottom: 16px;

        }

        .footer .content {
            margin-bottom: 12px;
            font-size: 14px;
        }

        .footer .btn {
            width: 150px;
            height: 35%;
            border: 0;
            background-color: #233333;
            color: #fff;
            border-radius: 50px;
            cursor: pointer;
            transition: all 0.5s;

        }

最终效果:

image.png

image.png

image.png


目录
相关文章
|
4天前
|
网络架构
Next14 页面与布局 使用
Next14 页面与布局 使用
|
2月前
|
小程序 前端开发 开发者
小程序的页面如何布局?
【10月更文挑战第16天】小程序的页面如何布局?
82 1
|
6月前
|
前端开发 JavaScript
网站布局
【6月更文挑战第2天】网站布局。
53 5
|
5月前
|
小程序 API
【微信小程序-原生开发】实用教程07 - Grid 宫格导航,详情页,侧边导航(含自定义页面顶部导航文字)
【微信小程序-原生开发】实用教程07 - Grid 宫格导航,详情页,侧边导航(含自定义页面顶部导航文字)
116 0
|
前端开发
移动端盒子拖拽
移动端盒子拖拽
61 0
|
7月前
|
前端开发
Flutter笔记:光影动画按钮、滚动图标卡片组等
Flutter笔记:光影动画按钮、滚动图标卡片组等
85 0
|
7月前
|
数据可视化 大数据
【透明版九宫格背景图片】仅依靠background的几个属性组合搭配出酷炫的透明背景卡片效果→适用于大数据可视化、数据大屏展示页面
【透明版九宫格背景图片】仅依靠background的几个属性组合搭配出酷炫的透明背景卡片效果→适用于大数据可视化、数据大屏展示页面
【透明版九宫格背景图片】仅依靠background的几个属性组合搭配出酷炫的透明背景卡片效果→适用于大数据可视化、数据大屏展示页面
|
小程序 JavaScript
微信小程序横向滚动卡片列表模板
微信小程序横向滚动卡片列表模板
315 0
网页的基本布局
网页的基本布局
78 0
按钮卡片特效集锦
20款按钮特效 和 11款卡片合集  
按钮卡片特效集锦
下一篇
DataWorks