Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >转一个css3绘制的iPhone6

转一个css3绘制的iPhone6

作者头像
练小习
发布于 2017-12-29 02:52:47
发布于 2017-12-29 02:52:47
5310
举报
文章被收录于专栏:练小习的专栏练小习的专栏

css3绘制的iPhone6

<!DOCTYPE html>

<html>

<head>

<title></title>

<style type="text/css">

@font-face {

font-family: Helvetica;

src: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/164210/HelveticaNeue-UltraLight.otf) format('TrueType');

font-weight: 300;

}

body {

font-family: 'Helvetica', sans-serif;

background: #f5f5f5;

color: #333;

letter-spacing: 1px;

}

html,body {

height: 100%;

margin: 0;

padding: 0;

overflow: hidden;

}

#wrapper {

height: 520px;

width: 800px;

margin-left: -400px;

margin-top: -260px;

position: absolute;

perspective: 6000px;

top: 50%;

left: 50%;

}

#iphone {

height: 760px;

width: 372px;

border-radius: 50px;

position: absolute;

background: none;

box-shadow: none;

left: 206px;

top: -140px;

transform: rotateX(54deg) rotateZ(-46deg);

transform-style: preserve-3d;

}

#side {

background: #CDD0D5;

width: 393px;

height: 780px;

border-top-left-radius: 77px;

border-bottom-left-radius: 49px;

border-bottom-right-radius: 86px;

border-top-right-radius: 70px;

position: absolute;

top: 5px;

left: -26px;

box-shadow: inset #3D3E42 0 0 15px 9px;

}

#front {

width: 362px;

height: 750px;

border-radius: 49px;

position: absolute;

background-image: -webkit-linear-gradient(-27deg,#444,#000 10%, #000 42%, #333, #000 57%, #000 91%, #444);

left: 5px;

top: 5px;

box-shadow: inset #000 0 0 0 4px, #555 0px 0 3px 0px, #222 -3px 2px, #000 -5px 5px, #E0E0E0 -7px 6px 1px, #6D6D6D -7px 6px 9px;

transform: translateZ(1px);

}

#front-cover {

width: 344px;

height: 734px;

background: #000;

border-radius: 39px;

position: absolute;

top: 8px;

left: 9px;

}

#home {

position: absolute;

width: 52px;

height: 52px;

border-radius: 50%;

background: linear-gradient(32deg,#666,#000,#666);

top: 684px;

left: 160px;

}

#home div {

background: #000;

border-radius: 50%;

width: 46px;

height: 46px;

position: absolute;

left: 3px;

top: 3px;

}

#camera {

width: 11px;

height: 11px;

background: #000;

position: absolute;

top: 35px;

left: 124px;

border-radius: 50%;

box-shadow: inset #666 -5px 2px 9px -2px;

}

#camera div {

width: 6px;

height: 6px;

background: radial-gradient(#E1E4F5,#0D2B69 33%);

background-position: -1px -1px;

position: absolute;

top: 3px;

left: 3px;

border-radius: 50%;

}

#speaker {

width: 50px;

height: 4px;

border-radius: 2px;

background: #555;

position: absolute;

top: 39px;

left: 156px;

box-shadow: inset #222 0 0px 4px;

}

#volume {

height: 128px;

width: 11px;

border-radius: 10px;

position: absolute;

background: #F9F9FA;

top: 171px;

left: -20px;

transform: rotateY(95deg);

transform-style: preserve-3d;

box-shadow: inset #292A2F 4px 0 8px 1px, #D5D5D5 -1px 0px 2px;

}

#volume div {

width: 8px;

height: 55px;

background: #BBBCC0;

border-radius: 10px;

position: absolute;

box-shadow: #eee -1px 1px, #777 -1px 3px, #505057 -3px 3px, inset #909197 -3px 0 3px;

}

#volume div:first-child {

top: 2px;

left: 4px;

}

#volume div:last-child {

top: 69px;

left: 4px;

}

#toggler {

height: 34px;

width: 8px;

border-radius: 10px;

position: absolute;

background: #2B2C31;

top: 105px;

left: -20px;

transform: rotateY(95deg);

transform-style: preserve-3d;

box-shadow: inset #292A2F 4px 0 8px 1px, #D5D5D5 -1px 0px 2px;

}

#toggler div {

width: 4px;

height: 31px;

background: #BBBCC0;

border-radius: 10px;

position: absolute;

box-shadow: #eee -1px 1px, #777 -2px 3px, #505057 -3px 3px, inset #909197 -3px 0 3px;

top: -1px;

left: 3px;

}

#aux {

width: 19px;

height: 19px;

background: #3B3B3B;

border-radius: 50%;

transform: rotateX(90deg) translateZ(1px);

transform-style: preserve-3d;

position: absolute;

top: 766px;

left: 45px;

box-shadow: inset #000 6px -3px 10px 1px, #C7C7C7 1px 0px 1px;

}

#lightning {

width: 48px;

height: 12px;

border-radius: 10px;

background: #3F3F3F;

transform: rotateX(90deg) translate3d(0px,1px,0px);

top: 771px;

position: absolute;

left: 139px;

box-shadow: inset #8E8F94 -1px 1px 0px 2px, #515258 0px 0px 0 1px, inset #000 0 -3px 10px, #DADADA 1px 0 0 1px;

}

#bottom-speaker {

position: absolute;

transform: rotateX(90deg);

top: 781px;

left: 70px;

}

#bottom-speaker div {

width: 8px;

height: 8px;

border-radius: 50%;

background: #6C6D72;

position: absolute;

box-shadow: inset #000 1px -1px 4px 1px, #DADADA 1px 0px;

}

#bottom-speaker div:nth-child(2) { left: 150px; }

#bottom-speaker div:nth-child(3) { left: 162px; }

#bottom-speaker div:nth-child(4) { left: 174px; }

#bottom-speaker div:nth-child(5) { left: 186px; }

#bottom-speaker div:nth-child(6) { left: 198px; }

#bottom-speaker div:nth-child(7) { left: 210px; }

#skrews {

position: absolute;

top: 780px;

left: 120px;

transform: rotateX(90deg);

}

#skrews div {

position: absolute;

width: 8px;

height: 8px;

background: rgb(95, 92, 92);

border-radius: 50%;

top: 0;

z-index: 4;

box-shadow: inset #999AA0 0 0 0px 2px, #444 1px 0px;

}

#skrews div:last-child {

left: 70px;

}

#lines {

position: absolute;

top: 82px;

left: -32px;

}

#lines > div:last-child {

top: 634px;

}

#lines div {

width: 7px;

height: 11px;

position: absolute;

transform-style: preserve-3d;

transform-origin: 100% 100%;

}

#lines > div {

background: linear-gradient(right,#393A3C,#5A595E);

transform: rotateY(90deg);

}

#lines > div > div {

background: linear-gradient(right,#5A595E,#87868A);

transform: rotateY(17deg);

left: -6px;

}

#lines > div > div > div {

background: linear-gradient(right,#87868A,#A8A6AD);

transform: rotateY(17deg);

left: -6px;

}

#shadow {

width: 350px;

height: 755px;

background: black;

position: absolute;

top: 5px;

left: 0;

transform: translateZ(-17px);

transform-style: preserve-3d;

box-shadow: #000 0 0 10px 15px;

opacity: 0.4;

border-top-left-radius: 76px;

border-top-right-radius: 200px;

border-bottom-left-radius: 40px;

border-bottom-right-radius: 56px;

}

#screen {

background: linear-gradient(#A1E5E5,#1987AA);

width: 336px;

height: 589px;

position: absolute;

top: 80px;

left: 13px;

font-weight: 300;

color: #fff;

background-size: 200% 100%;

overflow: hidden;

}

#time {

font-size: 86px;

left: 57px;

top: 37px;

position: absolute;

}

#date {

font-size: 20px;

left: 85px;

top: 130px;

position: absolute;

}

#bottom {

width: 37px;

height: 7px;

border-radius: 5px;

background: #2AB1DB;

position: absolute;

top: 573px;

left: 149px;

}

#top {

width: 37px;

height: 7px;

border-radius: 5px;

background: #D7FFFF;

position: absolute;

top: 10px;

left: 149px;

}

#slide {

position: absolute;

top: 489px;

left: 88px;

font-size: 28px;

color: #2AB1DB;

background: linear-gradient(left,#2EC4F3 30%,#fff,#2EC4F3 70%);

-webkit-background-clip: text;

-webkit-text-fill-color: transparent;

background-size: 350px;

animation: slide 5s linear infinite;

}

@keyframes slide {

0% { background-position: 100px 0; }

40% { background-position: 440px 0; }

100% { background-position: 440px 0; }

}

#slide div {

transform: rotate(135deg);

border-left: 2px solid #2AB1DB;

border-top: 2px solid #2AB1DB;

width: 15px;

height: 15px;

position: absolute;

left: -29px;

top: 10px;

}

#signal {

position: absolute;

top: 9px;

left: 7px;

}

#signal div {

width: 6px;

height: 6px;

border-radius: 50%;

background: #fff;

border: 1px solid #fff;

position: absolute;

}

#signal div:nth-child(2) {

left: 9px;

}

#signal div:nth-child(3) {

left: 18px;

}

#signal div:nth-child(4) {

left: 27px;

}

#signal div:nth-child(5) {

left: 36px;

background: none;

}

#battery {

position: absolute;

top: 3px;

left: 270px;

font-size: 13px;

}

#battery > div:last-child {

width: 27px;

height: 9px;

border: 1px solid #fff;

position: absolute;

top: 4px;

left: 27px;

border-radius: 2px;

}

#battery div div:first-child {

width: 21px;

height: 7px;

background: #fff;

position: absolute;

top: 1px;

left: 1px;

}

#battery div div:last-child {

width: 1px;

height: 6px;

background: #FFF;

position: absolute;

left: 29px;

top: 2px;

border-radius: 0 1px 1px 0;

}

#fabrizio {

border-top: 100px solid black;

border-right: 63px solid transparent;

width: 0;

transform: scale(.33);

transform-origin: 0 0;

margin: 20px;

opacity:.6;

position: absolute;

bottom: -130px;

}

#fabrizio:before {

background: black;

width: 20px;

height: 30px;

content: '';

display: block;

transform: skewX(-32deg);

position: relative;

top: -65px;

left: 29px;

}

#fabrizio:after {

background: black;

width: 40px;

height: 36px;

content: '';

display: block;

transform: skewX(-32deg);

position: relative;

top: -130px;

left: 49px;

}

#circle {

width: 50px;

height: 50px;

background: none;

border-radius: 50%;

box-shadow: rgba(255,255,255,0.1) 160px 335px,rgba(255,255,255,0.1) 120px 275px 0 12px,rgba(255,255,255,0.1) 60px 355px 0 23px,rgba(255,255,255,0.1) 230px 445px 0 -8px,rgba(255,255,255,0.1) 60px 125px,rgba(255,255,255,0.1) 260px 145px 0 12px,rgba(255,255,255,0.1) 300px 145px 0 23px,rgba(255,255,255,0.1) 100px 85px 0 -8px,rgba(255,255,255,0.1) 50px 155px,rgba(255,255,255,0.1) 150px 273px 0 -2px,rgba(255,255,255,0.1) 50px 555px 0 23px,rgba(255,255,255,0.1) 180px 5px 0 -8px;

animation: circle 30s linear infinite alternate;

}

@keyframes circle {

0%{

box-shadow: rgba(255,255,255,0.1) 160px 335px,rgba(255,255,255,0.1) 120px 275px 0 12px,rgba(255,255,255,0.1) 60px 355px 0 23px,rgba(255,255,255,0.1) 230px 445px 0 -8px,rgba(255,255,255,0.1) 60px 125px,rgba(255,255,255,0.1) 260px 145px 0 12px,rgba(255,255,255,0.1) 300px 145px 0 23px,rgba(255,255,255,0.1) 100px 85px 0 -8px,rgba(255,255,255,0.1) 350px 555px,rgba(255,255,255,0.1) 350px 273px 0 -2px,rgba(255,255,255,0.1) 150px 355px 0 23px,rgba(255,255,255,0.1) 180px 205px 0 -8px,rgba(255,255,255,0.1) 0px 0px 0 -8px,rgba(255,255,255,0.1) 100px 555px 0 10px;

}

100%{

box-shadow: rgba(255,255,255,0.1) 70px 10px,rgba(255,255,255,0.1) 300px 205px 0 12px,rgba(255,255,255,0.1) 0px 155px 0 23px,rgba(255,255,255,0.1) 330px 45px 0 -8px,rgba(255,255,255,0.1) 460px 325px,rgba(255,255,255,0.1) 0px 445px 0 12px,rgba(255,255,255,0.1) 300px 145px 0 23px,rgba(255,255,255,0.1) 100px 85px 0 -8px,rgba(255,255,255,0.1) 50px 155px,rgba(255,255,255,0.1) 150px 273px 0 -2px,rgba(255,255,255,0.1) 0px 555px 0 23px,rgba(255,255,255,0.1) 180px 5px 0 -8px,rgba(255,255,255,0.1) 300px 555px 0 -8px,rgba(255,255,255,0.1) 350px 355px 0 10px;

}

}

#reminder {

position: absolute;

top: 230px;

left: 40px;

width: 296px;

height: 50px;

border-top: 1px solid #86E2F0;

border-bottom: 1px solid #86E2F0;

line-height: 50px;

font-weight: 400;

opacity: 0;

animation: reminder .1s linear forwards 15s;

}

#reminder div:first-child {

background: #fff;

width: 16px;

height: 16px;

border-radius: 3px;

position: absolute;

top: 18px;

}

#reminder div:nth-child(2) {

position: absolute;

left: 30px;

}

#reminder div:last-child{

position: absolute;

left: 251px;

font-size: 11px;

color: #86E2F0;

}

@keyframes reminder {

100% {

opacity: 1;

}

}

#awwwards {

position: absolute;

bottom: 30px;

left: 70px;

}

#awwwards a {

color: #444;

text-decoration: none;

border-bottom: 1px solid #888;

}

#coolors {

position: absolute;

bottom: 30px;

right: 30px;

color: #444;

text-decoration: none;

border-bottom: 1px solid #888;

animation: coolors 1s infinite;

opacity: 1;

}

@keyframes coolors {

50% { right: 40px; }

}

</style>

</head>

<body>

<div id="wrapper">

<div id="iphone">

<div id="side"></div>

<div id="lines">

<div>

<div>

<div></div>

</div>

</div>

<div>

<div>

<div></div>

</div>

</div>

</div>

<div id="toggler">

<div></div>

</div>

<div id="aux"></div>

<div id="lightning"></div>

<div id="bottom-speaker">

<div></div>

<div></div>

<div></div>

<div></div>

<div></div>

<div></div>

<div></div>

</div>

<div id="skrews">

<div></div>

<div></div>

</div>

<div id="volume">

<div></div>

<div></div>

</div>

<div id="front">

<div id="front-cover"></div>

<div id="camera">

<div></div>

</div>

<div id="speaker"></div>

<div id="screen">

<div id="reminder">

<div></div>

<div>Made by @_fbrz</div>

<div>now</div>

</div>

<div id="circle"></div>

<div id="time">12:42</div>

<div id="date">Saturday, January 4</div>

<div id="bottom"></div>

<div id="top"></div>

<div id="slide">

<div></div>

slide to unlock

</div>

<div id="signal">

<div></div>

<div></div>

<div></div>

<div></div>

<div></div>

</div>

<div id="battery">

<div>86%</div>

<div>

<div></div>

<div></div>

</div>

</div>

</div>

<div id="home">

<div></div>

</div>

</div>

<div id="shadow"></div>

</div>

</div>

</body>

</html>

提示:你可以先修改部分代码再运行。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
纯css实现117个Loading效果(下)
这是我这几十年间从世界各地寻觅到的 Loading特效,合计117个(本文贴出第79-117个),而且是 纯CSS 制作的。
德育处主任
2022/04/17
1.1K0
纯css实现117个Loading效果(下)
CSS3实现雪容融自由
前几天写了一篇CSS3实现冰墩墩自由的技术文章,很多人问有没有雪容融的,今天就来啦!
用户5997198
2022/03/28
2580
CSS3实现雪容融自由
CSS3版天气预报
前言 前几天看了一篇文章 , 颠覆了我对 CSS 认识,心中无数次蹦出一个念头:’WC,还能特么这么用,这特么太叼了’ … 于是我迫不及待想跟你们一起分享分享,以后你也可以在别人面前炫(装)耀(B)了~ ps:本文原创不是我,我只是搬运工,看到好东西与大家分享而已 装B指南 本文中,所有的图形都是在单个标签内实现的,大量使用了 CSS3 中的 ::before 、 ::after 伪元素, transparent 、 border,多重线性与径向渐变,多重内外阴影,如果你的效果不尽人意,请尝试在
杨逸轩
2018/06/14
3.2K0
仅用 CSS 实现赛博朋克 2077 风格视觉效果
《赛博朋克2077》 是一款动作角色类游戏,于 2020年12月10日 登陆各大游戏平台。故事发生在夜之城,权力更迭和身体改造是这里不变的主题。玩家将扮演一名野心勃勃的雇佣兵:V,追寻一种独一无二的植入体——获得永生的关键。它以自由的探索性,较高的操控度以及惊艳的视觉特效收获了一大批玩家。我非常喜欢 2077 官网的设计风格,因此本篇文章主要以 2077 官网为例,通过几个例子,依次实现赛博朋克风格元素效果。
zz_jesse
2021/07/30
6020
CSS卡通小汽车
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>CodePen - CSS ART - Vintage VW Bug -</title> <style> :root { --size: 60; --unit: calc((var(--size) / 800) * 1vmin); } * { box-sizing: border-box; } bo
我不是费圆
2020/12/17
4730
CSS 绘制「漫画」场景
CSS 这块内容,一直是想着放下,然后又拿起来,反复了好几次,然后发现现在的 CSS 变化太大了,想要全部涉猎挺难的。一个属性在某个阶段可能使用比较多,也就记住了,但不久之后可能也就忘了,或者仅有一个印象而已。
前端黑板报
2021/09/15
3900
CSS 绘制「漫画」场景
CSS3实现“图片阴影”效果
利用多投影重叠的原理,实现曲线阴影与翘边阴影的效果,花一个小时看完的课程,理解的似懂非懂。直接发一下老师写的成品吧。用到来取。css都补上了注释。
AlexTao
2019/12/13
2K0
CSS3实现“图片阴影”效果
CSS魔法堂:Box-Shadow没那么简单啦:)
前言  说起box-shadow那第一个想法当然就是用来实现阴影,其实它还能用于实现其他好玩的效果的,本篇就打算说说box-shadow的那些事。 二话不说看效果 3D小球 <style type
^_^肥仔John
2018/01/18
1.3K0
CSS魔法堂:Box-Shadow没那么简单啦:)
圣诞快乐:纯CSS绘制圣诞老人头像
圣诞来临前夕,为小伙伴们加更一个有趣的CSS3效果,CSS3圣诞老人,同时祝大家圣诞快乐。
Javanx
2019/12/25
7670
Switch游戏机模型
一,Switch游戏机 1,大家好,我们老样子先放运行的照片放在下面。 2,看到上面的Switch游戏机有没有想快点想拿到源码的感觉,大家不要急,不妨先给我点个赞,如果给个关注那就更好了,谢谢大家!Switch游戏机代码如下,请大家自行观看。 <!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <title>海拥 | Switch游戏机</title> <link rel='stylesheet' href='https://c
海曈
2022/11/14
5430
Switch游戏机模型
(备份)博客样式 Cnblogs-Theme-SimpleMemory-v1.3.4 博客园的后台设置
皮肤设置 页面定制CSS代码 *,.Cal{padding:0}::-moz-selection{background:#807dd4;color:#FFF}::selection{background:#807dd4;color:#FFF}::-webkit-selection{background:#807dd4;color:#FFF}::-moz-selection{background:#807dd4}::-webkit-scrollbar{width:3px;height:3px}::-web
于果
2021/08/25
5010
从浅到深的学习 CSS3阴影(box-shadow)
知识点: 1、外 box-shadow 前四个参数:x 偏移值、y 偏移值 、模糊半径、扩张半径。 2、单侧投影的核心是第四个参数:扩张半径。这个参数会根据你指定的值去扩大或缩小投影尺寸,如果我们用一个负的扩张半径,而他的值刚好等于模糊半径,那么投影的尺寸就会与投影所属的元素尺寸完全一致,除非使用偏移量来移动他,否则我们将看不到任何投影。
Javanx
2019/09/04
6210
从浅到深的学习 CSS3阴影(box-shadow)
光标有反转效果的侧边导航(附源代码)
这是一个侧边导航效果,这个展开的效果给人一种很柔和的感觉,展开后菜单内容依次显示,最后是增加了一个聚焦的圆跟随光标移动,当遇到菜单内容时会放大圆形并反转显示菜单文字,加深了对导航的交互,这里的反转色基于 mix-blend-mode: difference 实现。这个效果还有两个主题色切换,有兴趣的可以在线看效果。
半夜喝可乐
2024/10/10
1540
光标有反转效果的侧边导航(附源代码)
驶入2023
马上进入2023年了,这一年我们经历了很多有酸甜苦辣,但是并不妨碍我们用崭新的自己来面对新的一年,偶然在网上看到一位大佬用css做了一辆喜庆的车车来让人们驶入2023
橘子君丶
2023/03/06
2560
灵动岛前端Ui
当用户收到信息后,iPhone 14 Pro显示屏上方的灵动岛可以展开显示信息。此外灵动岛还可以显示音乐播放、Siri等组件,让用户在首页直接完成各种功能控制和信息阅读。iPhone 14 Pro 拥有6.1英寸屏幕,还将推出6.7英寸的iPhone 14 Pro MAX [2]
天天Lotay
2022/12/27
9070
灵动岛前端Ui
忍术!猫眼三勾玉
如果你觉得我的代码还算有趣,在你的学习中能有所帮助,请查看我的置顶文章,我由衷感谢!  前端的学习不是一蹴而就,不积跬步无以至千里,不积小流无以成江海。持续不断的努力才能让你我有所收获。 效果图:
我不是费圆
2020/09/22
4910
忍术!猫眼三勾玉
纯CSS3绘制的逼真,呆萌,超酷的CSS3动画纯CSS3人物行走动画 逼真炫酷CSS3动画纯CSS3绘制的小猫笑脸动画 超呆萌纯CSS3绘制可爱小男孩动画 超酷面部表情
纯CSS3人物行走动画 逼真炫酷CSS3动画 CSS3实在是太强大了,今天分享的CSS3动画非常神奇,它可以模拟人物行走,而且人物行走动画非常逼真。人物行走时的跨步动画时多张图片重叠实现的。有了这个
wblearn
2018/08/27
1.7K0
纯CSS3绘制的逼真,呆萌,超酷的CSS3动画纯CSS3人物行走动画 逼真炫酷CSS3动画纯CSS3绘制的小猫笑脸动画 超呆萌纯CSS3绘制可爱小男孩动画 超酷面部表情
菜鸡博客开……开……开源了!
因为很多人找我要过博皮源码,所以本宝宝经过深思熟虑,最终决定把自己的源码分享给大家!
attack
2018/09/21
2.9K0
暗夜发光,独自闪耀,盘点网页暗黑模式(DarkMode)下的特效和动效,CSS3实现
    众所周知,网页的暗黑模式可以减少屏幕反射和蓝光辐射,减少眼睛的疲劳感,特别是在夜间使用时更为明显。其实暗黑模式也给霓虹灯效应(Neon Effect)提供了发挥的环境。
用户9127725
2023/03/28
5860
暗夜发光,独自闪耀,盘点网页暗黑模式(DarkMode)下的特效和动效,CSS3实现
订单确认按钮动画
阿超
2024/03/12
1310
相关推荐
纯css实现117个Loading效果(下)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档