问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

这个字体是怎么用css实现的,代码写下哦 十分感谢

发布网友 发布时间:2022-04-06 10:22

我来回答

4个回答

懂视网 时间:2022-04-06 14:43

本篇文章给大家带来的内容是关于如何使用纯CSS实现一只红色的愤怒小鸟(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

效果预览

4067026235-5b80beb268435_articlex.png

源代码下载

https://github.com/comehope/front-end-daily-challenges

代码解读

定义 dom,容器中包含 6 个元素,分别代表头、眼睛、眉毛、嘴、冠羽、尾巴:

<div class="red">
 <span class="head"></span>
 <span class="eyes"></span>
 <span class="eyebrows"></span>
 <span class="mouth"></span>
 <span class="hair"></span>
 <span class="tail"></span>
</div>

居中显示:

body {
 margin: 0;
 height: 100vh;
 display: flex;
 align-items: center;
 justify-content: center;
 background-color: antiquewhite;
}

设置子元素的共有属性:

.red * {
 position: absolute;
}

.red *::before,
.red *::after {
 content: '';
 position: absolute;
}

定义容器尺寸:

.red {
 width: 12em;
 height: 11em;
 font-size: 16px;
 position: relative;
}

画出头部轮廓,把描边参数定义为变量,是因为后面还会用到:

.red {
 --border: 0.2em solid #6a0306;
}

.head {
 width: inherit;
 height: inherit;
 background-color: #dc002d;
 border-radius: 45% 55% 45% 45% / 55% 60% 40% 45%;
 border: var(--border);
}

用伪元素画出眼睛的轮廓:

.eyes::before,
.eyes::after {
 width: 2.4em;
 height: 2.6em;
 background: white;
 border-radius: 50%;
 border: var(--border);
}

.eyes::before {
 top: 3.7em;
 left: 5.5em;
 z-index: 1;
}

.eyes::after {
 top: 3.8em;
 left: 7.8em;
}

用径向渐变画出眼珠和瞳孔:

.eyes::before,
.eyes::after {
 background: 
 radial-gradient(
  circle at calc(var(--eyeball-left) + 6%) 48%,
  white 0.1em,
  transparent 0.1em
 ),
 radial-gradient(
  circle at var(--eyeball-left) 48%,
  black 0.5em,
  transparent 0.5em
 ),
 white;
}

.eyes::before {
 --eyeball-left: 65%;
}

.eyes::after {
 --eyeball-left: 41%;
}

用伪元素画出眉毛:

.eyebrows::before,
.eyebrows::after {
 height: 1.1em;
 background-color: black;
 top: 3.6em;
 z-index: 2;
}

.eyebrows::before {
 left: 5em;
 transform: skewY(12deg);
 width: 3.4em;
}

.eyebrows::after {
 left: 8.2em;
 transform: skewY(-15deg);
 width: 3.1em;
}

画出嘴的轮廓:

.mouth {
 width: 2.8em;
 height: 2.8em;
 background-color: #fca90d;
 top: 6em;
 left: 7em;
 z-index: 3;
 border-radius: 20% 0 20% 10%;
 transform: rotate(34deg) skewX(-15deg);
 border: 0.1em solid black;
}

用伪元素画出上下颌的分界线:

.mouth::before {
 width: 3.4em;
 height: 4em;
 border: 0.2em solid;
 top: -1.6em;
 left: -1.8em;
 border-radius: 0 0 40% 0;
 transform: rotate(42deg);
 border-color: transparent black transparent transparent;
}

画出冠羽的左侧:

.hair {
 width: 1.2em;
 height: 3em;
 background-color: #dc002d;
 border-radius: 50%;
 border: var(--border);
 top: -1.8em;
 left: 2.8em;
 transform: rotate(-70deg);
 border-bottom-color: transparent;
}

用伪元素画出冠羽的右侧:

.hair::before {
 width: inherit;
 height: inherit;
 background-color: inherit;
 border-radius: inherit;
 border: inherit;
 top: 1em;
 left: 0.8em;
 transform: rotate(20deg);
}

用伪元素把冠羽多余的搭边线遮盖住:

.hair::after {
 width: 3em;
 height: 2em;
 background-color: #dc002d;
 border-radius: 50%;
 top: 2.3em;
 left: -1.5em;
 transform: rotate(70deg);
}

画出尾巴中最长的一根羽毛:

.tail {
 width: 3em;
 height: 1em;
 background-color: black;
 top: 40%;
 left: -1.8em;
 z-index: -1;
 transform: rotate(15deg);
}

用伪元素画出尾巴中较短的两根羽毛:

.tail::before,
.tail::after {
 width: inherit;
 height: 70%;
 background-color: black;
 left: 0.6em;
}

.tail::before {
 transform: rotate(25deg);
 top: -0.4em;
}

.tail::after {
 transform: rotate(-20deg);
 top: 0.8em;
}

用伪元素画出胸前的羽毛:

.head {
 overflow: hidden;
}

.head::before {
 width: inherit;
 height: inherit;
 background-color: #e3c4ab;
 border-radius: inherit;
 top: 65%;
 left: 25%;
}

接下来画阴影,增强立体感。

为头部增加阴影:

.head {
 box-shadow: 
 inset 0.5em -0.5em 0.3em 0.2em rgba(0, 0, 0, 0.2),
 inset -1em 0.8em 1.5em -0.5em rgba(237, 178, 144, 0.7);
}

为眼睛增加阴影:

.eyes::before {
 box-shadow: -0.2em 0.2em 0.2em 0.3em rgba(0, 0, 0, 0.2);
}

.eyes::after {
 box-shadow: 0.2em 0.2em 0.4em 0.3em rgba(0, 0, 0, 0.1);
}

为嘴增加阴影:

.mouth {
 box-shadow: 
 inset 0.2em -0.4em 1em rgba(0, 0, 0, 0.4),
 inset 0 0.5em 0.5em rgba(255, 255, 255, 0.3);
}

大功告成!

相关推荐:

如何使用纯css实现赛车的loader动画效果(附代码)

如何使用纯CSS实现冰棍的动画效果(附代码)

热心网友 时间:2022-04-06 11:51

可以用图片,如果“首页”二字是用图片做成的,这可能是使用了PS或者其他设计软件弄出来的,单纯的想通过单纯的颜色color来实现比较困难。

如果是用文字的话,可以使用超链接的样式:
a:active是超级链接的初始状态
a:hover是把鼠标放上去时的状况
a:link 是鼠标点击时
a:visited是访问过后的情况追问就是 它的源代码 上面写的是代码 不是加的图片 问题写错了 可以帮我写串可以实现这文字的代码吗? 万分感谢啊

追答你是不是看的HTML代码,我和你说,人家可以这么写

首页

CSS部分
a{
display:block;
width:自己设置
height:自己设置
background:url(图片链接) no-repeat;
text-indent:-9999px;
}

这样也是插入图片的形式,兼容大部分浏览器!

所以,你看到文字的渐变色,人家肯定是用的处理软件弄的图片文字,不然单纯的想用CSS3实现十分困难!

热心网友 时间:2022-04-06 13:09

这种字体有渐变有阴影,很美,很好看。如果你不考虑浏览器的兼容性的话,倒是可以用css3来实现了。css3可以实现文字的渐变与可以实现文字的阴影。如果你要考虑各个浏览器的兼容性的话,那我建议你还是直接切成一张图片来实现比较理想。追问但是这个字体 我就是在星际争霸上面看见的, 它就是用代码写的, 开始我还以为就是图片。 看源代码 结果是图片,它又是怎么实现的呀?

热心网友 时间:2022-04-06 14:44

这种是图片的。可以结合css里的hover属于,做变化。目前CSS3还达不到浏览器兼容。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
石料加工服务可以全部交给第三人完成吗 山东沃尔德集团集团所辖公司介绍 齐鲁银行无忧贷和市民贷哪个好 什么叫补按揭 后按揭贷款什么意思 买房者续按揭有什么危害 加按揭是什么意思 八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 抖音退款商家不处理怎么办 抖音上购买衣服,因为商家未及时处理换货转退款,钱要退还给商家吗? 抖音退款超时会自动退款吗 抖音商家不处理退款超时会自动退回来吗? 抖音上退货填写物流信息卖家迟迟不退款是否可以自动退款? 在抖音上购买的不退不换的商品能退款吗? 在抖音上买东西,退货后,对方一直不退款,这种情况该如何处理? 抖音上买东西退货后商家不退款怎么办? 抖音上申请退款,商家不受理,超时会退款吗? 便宜的电磁炉和贵一点的电磁炉有什么区别 抖音可以仅退款商户超时处理会自动退吗? 抖音七天无理由退货卖家不同意会怎样? 电磁炉和电磁灶有什么区别?哪个好一点?如何选购? 抖音退货退款不处理会自动退款吗? 春节医院放假吗? 智能变频电磁炉好不好 与普通电磁炉有什么区别 高端电磁炉和一般电磁炉有什么区别? 智能电磁炉,和电磁炉区别在那? 杭州同济甲状腺医院,现在还能检查吗?过年放假不? 变频电磁炉有什么好处 word上面这种符号怎么输入,就是字母上面带个小帽的那种 word文档中的特殊数学符号怎么输入,比如说下角标、上角标怎么输入? 怎么在WORD里打出上标,下标,多次方和根号 数学符号怎么打?尤其上标下标那些? 老是喝咖啡有什么坏处? 长期喝咖啡对身体有什么危害?喝咖啡会提前衰老吗? 空气滤芯复合纸的好吗? 长期喝咖啡的坏处是什么? 汽车空气滤芯用纸含有淀粉合格吗? 您好 请问拼多多上的汽车空调滤芯跟空气滤芯可以买吗? 常喝咖啡有什么坏处? 空气滤清器有什么用 经常喝咖啡对身体会产生哪些影响? 长期喝咖啡对身体有什么好处和坏处?有什么依据呢? 长期喝咖啡的人有没有坏处 经常喝咖啡有什么影响 什么牌子与古诗词有关 需要一个古诗词取的香薰店铺名字? 有哪些品牌涉及到古诗词,例如鞋牌子“千百度”就涉及到辛弃疾的青玉案... 广东人口普查要多少年一次,上次普查时间是什么时候