CSS前端学习(online tuorials)

index.html

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <section>
        <div class="skew1">
            <h2 class ="layer"> 憨憨憨憨憨程序员学的前端例子~ </h2>
        </div>
        <div class = "textBox">
            <div class="skew2">
                <div class ="layer" >
                    <h2>
                        憨憨憨憨憨程序员学的前端例子~
                    </h2>
                </div>
            </div>

        </div>
    </section>


<script>
    // 监听鼠标移动事件,当鼠标在页面上移动时,触发 parallax 函数
    document.addEventListener('mousemove', parallax);
    
    // 定义一个名为 parallax 的函数,用于处理视差效果
    function parallax(e) {
        // 使用 querySelectorAll 选择页面中所有 class 为 .layer 的元素
        document.querySelectorAll('.layer').forEach(layer => {
            // 计算水平位移的值
            // e.pageX 是鼠标相对于页面左上角的水平位置
            // window.innerWidth 是窗口的宽度
            // 公式 (window.innerWidth - e.pageX * 2) / 2 用于计算视差效果的水平位移
            let x = (window.innerWidth - e.pageX * 2) / 2;
            
            // 将计算得到的位移值应用到元素的 transform 属性上,产生水平移动的效果
            layer.style.transform = `translateX(${x}px)`;
        });
    }
</script>
    
</body>
</html>

style.css

css 复制代码
@import url('https://fonts.googleapis.com/css?family=Poppins:200,300,400,500,600,700,700,900&display=swap');
*
{
 margin:0;
 padding: 0;
 box-sizing: border-box;
 font-family: 'Poppins',sans-serif;
}

section
{
position: relative;
width: 100%;
height: 100vh;
background: #222;
overflow: hidden;
}

section .textBox
{
    position:absolute;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: #333;
    clip-path: polygon(0 0,50% 0,50% 100%,0% 100%);

}

section h2,
section .textBox h2{
    position: absolute;
    width: 100%;
    text-align: center;
    font-size: 12em;
    line-height: 1em;
    color: #0488f5;
    -webkit-text-stroke: 0px #0876cf;
    cursor: pointer;

}

section h2
{
    -webkit-text-stroke: 2px #0876cf;
    color: transparent;

}

.skew1
{
    position: relative;
    top: 50px;
    transform:skewY(20deg);

}
.skew2
{
    position: relative;
    top: 50px;
    transform:skewY(-20deg);

}

clip-path: polygon(0 0, 50% 0, 50% 100%, 0% 100%); 使用多边形剪切路径创建一个从左上角到右下角的斜切形状。

-webkit-text-stroke: 0px #0876cf; 为文本添加蓝色边框(0像素宽度),使其变成透明文本并有边框效果。

cursor: pointer; 将鼠标悬停时的光标设置为指针,表示该元素可点击。

color: transparent; 将文本颜色设置为透明,使文本本身不可见,仅显示边框效果。

transform: skewY(20deg); 和 transform: skewY(-20deg); 分别使元素在Y轴方向上倾斜20度和-20度,产生斜切效果。

相关推荐
陈广亮2 分钟前
工具指南7-Unix时间戳转换工具
前端
_饭团4 分钟前
字符串函数全解析:12 种核心函数的使用与底层模拟实现
c语言·开发语言·学习·考研·面试·蓝桥杯
Larry_Yanan4 分钟前
Qt网络开发之基于 QWebEngine 实现简易内嵌浏览器
linux·开发语言·网络·c++·笔记·qt·学习
NGBQ121389 分钟前
Adobe-Premiere-Pro-2026-26.0.2.2-m0nkrus 全解析:专业视频编辑软件深度指南
前端·adobe·音视频
北城笑笑10 分钟前
Chrome:Paused in debugger 的踩坑实录:问题排查全过程与终极解决方案( 在调试器中暂停 )
前端·chrome
芯跳加速11 分钟前
AI 视频自动化学习日记 · 第三天
人工智能·学习·ai·自动化·音视频
haorooms12 分钟前
Promise.try () 完全指南
前端·javascript
kyriewen13 分钟前
闭包:那个“赖着不走”的家伙,到底有什么用?
前端·javascript·ecmascript 6
斌味代码16 分钟前
el-popover跳转页面不隐藏,el-popover销毁
前端·javascript·vue.js
该怎么办呢17 分钟前
cesium核心代码学习-01项目目录及其基本作用
前端·3d·源码·webgl·cesium·webgis