今日的CSS小案例

个人名片:
 作者简介:一名大一在校生,web前端开发专业
  个人主页:几何小超
 
座右铭:懒惰受到的惩罚不仅仅是自己的失败,还有别人的成功。
 **学习目标: 坚持每一次的学习打卡,学好前端

今天需要做的是原神的手风琴,看其他挺好玩,我就做了一个,现在还是把展示图放出来吧哈哈,因为本人也是个二次元LSP

 点击之后实现悬浮效果,看起来挺好看的,然后让咱们一起来设置

架构

这个布局相对于简单一点,有一个大盒子shell

里面放了一个版心card

然后把图片放盒子里面

下面的文字放另外一张盒子里面

 


            

                

                    
                

                

                    
                

                

凝光


            

            

                

                    
                

                

                    
                

                

多莉


            

            

                

                    
                

                

                    
                

                

刻晴


            

            

                

                    
                

                

                    
                

                

七七


            

            

                

                    
                

                

                    
                

                

纳西妲


            

            

                

                    
                

                

                    
                

                

雷电将军


            

            

                

                    
                

                

                    
                

                

可莉


            

            
            

                

                    
                

                

                    
                

                

芭芭拉


            

        

简单介绍一下架构之后,接下展示css代码,里面大量运用到了子集选择器,伪类选择器

介绍一下子集选择器><是指选择这个内容里面单独的内容

还是老规矩清除默认边距然后在加上css3盒子模型

给body设置弹性布局,然后缩放盒子大小,加上背景颜色,基本的样式就完成

然后其他的我相信大家都应该清除差不多了,不懂的再去查查资料这里就重点讲几个标签

今天的练习中遇到的两个新标签

 object-fit 属性用于指定应如何调整

这个属性告诉内容以不同的方式填充容器。比如“保留长宽比”或者“展开并占用尽可能多的空间

cube-bezier() 函数定义三次贝塞尔曲线(Cubic Bezier curve)。

三次贝塞尔曲线由 P0、P1、P2 和 P3 四个点进行定义。P0 和 P3 是曲线的起点和终点,在 CSS 中,这两个点是固定的,因为坐标是成比例。P0 为 (0, 0),代表初始时间和初始状态,P3 为 (1, 1),代表最终时间和最终状态。

伪类的话不用我多说了吧,详细情况还是查看W3C

这里是css代码

* {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        
        body {
            min-height: 100vh;
            overflow: hidden;
            display: flex;
            justify-content: center;
            align-items: center;
            background-image: linear-gradient(120deg,#e0c3fc 0%,#8ec5fc 100%);
             background-size: cover;
        }
        .shell{
            width: 1700px;
            margin: 0 auto;
            margin-top: 5rem;
            height: 750px;
            display: flex;
        }
        .card{
            flex-basis: 13%;
            position: relative;
            overflow: hidden;
        }
        .card:not(:nth(1)){
            margin-left: 20px;
        }
        .card:hover{
            overflow: initial;
        }
        .box{
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            transition:  all .1s cubic-bezier(0.165,0.84,0.44,1);
            overflow: hidden;
            border-radius: 10px;
            background-image: linear-gradient(100deg,#a18cd1,#fcaa55c,#141414ce);
            
            
        }
        .box>img{
            object-fit: contain;
            width: 100%;
            height: 100%;
            transform: translate(-50%,10% ) scale(3);
            position: relative;
            z-index: -1;
        }
        .card:hover>.box img{
            opacity: 0;
        }
        .card:hover>.box{
            transform: scaleY(1.5);
            background-image: initial;
            background-color: #7d419f;
            z-index: 2;
            cursor: pointer;
        }
        .card>h4{
            position: absolute;
            display: block;
            width: 120px;
            text-align: center;
            color: rgba(255,255,255,0.2);
            bottom: 0;
            left: 50%;
            transform: translate(-50%, -35%);
            font-size: 28px;
            z-index: 100;
            transition: .2s;
        }
        .card:hover h4{
            color: #fff;
            transform: translate(-50%,250%);
        }
        .card:hover .character>img{
            opacity: 1;
        }
            
        .card>.character{
            position: absolute;
            top: -100px;
            left: -400px;
            width: 100%;
            height: 100%;
            z-index: 3;
            pointer-events: none;
        }
        .character>img{
            width: 820px;
            height: 820px;
            object-fit: contain;
            opacity: 0;
            transition: all .3s;
            position: relative;
            z-index: -10;
        }

这里提供源码,大家可以尝试一边理解一边来写哦,嘻嘻



	
		
		
		
	
	
	    

凝光

多莉

刻晴

七七

纳西妲

雷电将军

可莉

芭芭拉

你可能感兴趣的:(css,前端,html)