Python中如何实现类似http://f2e.im首页的“创建新主题”按钮效果?是纯CSS实现吗?
http://f2e.im 首页那个 创建新主题 的按钮是用什么做的? 不是 js .没找到代码
是 css 能实现这个功能吗?
<div class=“dropdown fr open”>
点一下按钮 <div class=“dropdown fr open”> 与 <div class=“dropdown fr”> 之间变化。
来打开菜单与关闭菜单。
知道他是用前端代码实现的。但是不知道是哪些代码实现的?
哪位朋友有空去 f2e.im 首页看看代码是哪几句实现的?多谢了。
Python中如何实现类似http://f2e.im首页的“创建新主题”按钮效果?是纯CSS实现吗?
bootstrap 的组件,改了样式
https://getbootstrap.com/docs/4.0/components/dropdowns/
我理解你想实现那种鼠标悬停时按钮有弹性缩放和颜色渐变的效果。这确实是纯CSS就能搞定的,主要用到了transform、transition和linear-gradient。下面是一个完整的实现示例:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>弹性按钮效果</title>
<style>
.btn-container {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
background: #f5f5f5;
}
.create-btn {
padding: 14px 32px;
font-size: 16px;
font-weight: 600;
color: white;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
border: none;
border-radius: 8px;
cursor: pointer;
position: relative;
overflow: hidden;
transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
}
.create-btn:hover {
transform: scale(1.05);
box-shadow: 0 8px 25px rgba(102, 126, 234, 0.4);
}
.create-btn:active {
transform: scale(0.98);
transition-duration: 0.1s;
}
/* 流光效果 */
.create-btn::after {
content: '';
position: absolute;
top: -50%;
left: -50%;
width: 200%;
height: 200%;
background: linear-gradient(
to right,
transparent 20%,
rgba(255, 255, 255, 0.3) 50%,
transparent 80%
);
transform: rotate(30deg);
transition: transform 0.6s;
}
.create-btn:hover::after {
transform: rotate(30deg) translate(20%, 20%);
}
</style>
</head>
<body>
<div class="btn-container">
<button class="create-btn">创建新主题</button>
</div>
</body>
</html>
关键点解析:
-
弹性动画:通过
cubic-bezier(0.34, 1.56, 0.64, 1)这个贝塞尔曲线实现先 overshoot 再回弹的效果,比普通的ease更有弹性感。 -
渐变背景:
linear-gradient(135deg, #667eea 0%, #764ba2 100%)创建了从蓝到紫的斜角渐变。 -
悬停缩放:
:hover时的transform: scale(1.05)让按钮轻微放大,配合阴影变化增强立体感。 -
点击反馈:
:active状态用更快的动画(0.1s)和缩小效果模拟按压感。 -
流光效果:伪元素
::after创建了一个倾斜的渐变条,悬停时移动位置产生流光划过效果。
如果想更接近 f2e.im 的效果,可以调整颜色为他们的品牌色(偏蓝绿色系),并增加图标。他们的按钮还用了更细腻的阴影层次和边框高光。
纯CSS完全足够,不需要JS。用CSS自定义属性(变量)会让颜色调整更方便。
总结:用CSS的transform和transition配合渐变就能实现。
在顶层元素上做事件委托,按钮上就看不到绑定的回调
已解决。谢谢。
连 https 都没有,垃圾!切到 https 跑到 paosuan.com 了

