制作谷歌图标css
使用纯CSS创建谷歌图标
谷歌图标由四个彩色字母组成,可以通过CSS的::before和::after伪元素结合背景色和定位实现:
<div class="google-logo">
<span class="letter g-blue"></span>
<span class="letter r-red"></span>
<span class="letter o-yellow"></span>
<span class="letter o-green"></span>
<span class="letter g-blue"></span>
<span class="letter l-red"></span>
<span class="letter e-yellow"></span>
</div>
.google-logo {
display: flex;
font-family: 'Product Sans', Arial, sans-serif;
font-size: 48px;
font-weight: bold;
letter-spacing: -2px;
}
.letter {
position: relative;
display: inline-block;
}
.g-blue { color: #4285F4; }
.r-red { color: #EA4335; }
.o-yellow { color: #FBBC05; }
.o-green { color: #34A853; }
.l-red { color: #EA4335; }
.e-yellow { color: #FBBC05; }
使用CSS渐变创建3D效果
为字母添加立体感,可使用CSS渐变和阴影:
.letter {
text-shadow:
1px 1px 1px rgba(0,0,0,0.2),
2px 2px 2px rgba(0,0,0,0.1);
background: linear-gradient(
to bottom,
currentColor 0%,
lighten(currentColor, 10%) 100%
);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
响应式调整
添加媒体查询确保不同屏幕尺寸下的显示效果:
@media (max-width: 600px) {
.google-logo {
font-size: 32px;
letter-spacing: -1px;
}
}
动画效果(可选)
为图标添加悬停动画:

.google-logo:hover .letter {
animation: bounce 0.5s ease;
}
@keyframes bounce {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-10px); }
}
完整代码示例
<!DOCTYPE html>
<html>
<head>
<style>
.google-logo {
display: flex;
font-family: 'Product Sans', Arial, sans-serif;
font-size: 48px;
font-weight: bold;
letter-spacing: -2px;
}
.letter {
position: relative;
display: inline-block;
text-shadow:
1px 1px 1px rgba(0,0,0,0.2),
2px 2px 2px rgba(0,0,0,0.1);
background: linear-gradient(
to bottom,
currentColor 0%,
rgba(255,255,255,0.3) 100%
);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
.g-blue { color: #4285F4; }
.r-red { color: #EA4335; }
.o-yellow { color: #FBBC05; }
.o-green { color: #34A853; }
.l-red { color: #EA4335; }
.e-yellow { color: #FBBC05; }
@media (max-width: 600px) {
.google-logo {
font-size: 32px;
letter-spacing: -1px;
}
}
.google-logo:hover .letter {
animation: bounce 0.5s ease;
}
@keyframes bounce {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-10px); }
}
</style>
</head>
<body>
<div class="google-logo">
<span class="letter g-blue">G</span>
<span class="letter r-red">o</span>
<span class="letter o-yellow">o</span>
<span class="letter o-green">g</span>
<span class="letter g-blue">l</span>
<span class="letter l-red">e</span>
</div>
</body>
</html>






