CSS做一杯冷饮清凉一夏

简介: CSS做一杯冷饮清凉一夏

渐入三伏,酷热难耐,我们来用CSS做一杯冷饮来清凉一夏吧!

效果图


image.png

实现思路


我们利用flex布局实现元素居中的效果,使得整个杯子在页面中居中且拥有定位便于后面进行布局在利用边框实现杯子的样式,在通过glass类名盒子做出杯子中的液体效

果,这个需要使用背景色的渐变属性,在通过tube类名盒子实现吸管,这里的吸管有一个折弯的效果,需要利用定位以及旋转属性配合伪元素的方式进行实现,最后冰块的方式我们利用ice类名盒子实现,利用透明度属性结合背景色和边框圆角的属性的方式实现一个冰块的效果,在通过定位的方式定位到合适的位置,在利用盒子阴影属性实现复制出一个相同冰块的效果,最后在通过伪元素的方式实现其他俩个冰块的效果,在利用定位属性定位到合适的位置,接下来我们来实现一下吧

页面结构


<!-- 杯子 -->
 <div class="glass">
   <!-- 杯子内容 -->
    <div class="inside">
      <!-- 管子 -->
      <div class="tube"></div>
      <!-- 冰块 -->
      <div class="ice"></div>
    </div>
  </div>

初始样式


利用flex布局的方式实现元素居中

body {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 900px;
      width: 100vw;
      overflow: hidden;
      background: #F1E3D3;
    }

杯子基础样式


做出杯子的大致样式

/* 杯子 */
    .glass {
      width: 144px;
      height: 220px;
      margin: 0 auto;
      border: 5px solid #000;
      padding: 16px;
      position: relative;
    }

image.png

我们在通过圆角边框属性设置使得杯子下边拥有一个圆边

border-radius: 0 0 10% 10%;


image.png

杯子液体


我们通过背景颜色的渐变色属性实现杯子液体的效果且配合杯子也给液体一个下边圆角的效果

/* 杯子内部 */
    .inside {
      width: 100%;
      height: 100%;
      background: linear-gradient(rgb(39, 252, 252), rgb(37, 186, 255));
      border-radius: 0 0 10% 10%;
   }


image.png

杯子管子


用伪元素结合定位以及旋转属性实现一个弯曲管子的效果

/* 管子 */
    .tube {
      width: 8px;
      height: 42px;
      background: #fff;
      position: absolute;
      top: -47px;
      right: 42px;
      transform: rotate(10deg);
    }
    .tube:before {
      content: "";
      position: absolute;
      background-color: #fff;
      width: 8px;
      height: 42px;
      top: -37px;
      left: 11px;
      transform: rotate(30deg);
    }


image.png

冰块


冰块的实现我们通过背景透明色结合圆边框进行实现

.ice {
      width: 64px;
      height: 64px;
      background: #fff;
      opacity: 40%;
      border-radius: 30%;
      transform: rotate(250deg);
      position: absolute;
      margin-top: 145px;
      margin-left: 18px;
    }

image.png

我们在通过旋转属性和边框阴影的方式实现冰块的旋转和另一个冰块的实现

box-shadow: 96px 96px #fff;

image.png

最后通过冰块伪元素的方式实现其他俩个冰块,在通过定位属性进行定位冰块位置

.ice:before,
    .ice:after {
      content: "";
      position: absolute;
      width: 64px;
      height: 64px;
      background: #fff;
      border-radius: 30%;
    }
    .ice:before {
      transform: rotate(30deg);
      top: 12px;
      left:68px;
    }
    .ice:after {
      transform: rotate(230deg);
      top: 72px;
      left: 32px;
    }

image.png

image.png

我正在参加「创意开发 投稿大赛」详情请看:掘金创意开发大赛来了!

相关文章
|
前端开发 JavaScript
夏天到了,用CSS写一个小风扇清凉一夏吧
夏天到了,用CSS写一个小风扇清凉一夏吧
夏天到了,用CSS写一个小风扇清凉一夏吧
|
4月前
|
前端开发
2s 利用 HTML+css动画实现企业官网效果
2s 利用 HTML+css动画实现企业官网效果
HTML+CSS 实现通用的企业官网页面(记得收藏)
HTML+CSS 实现通用的企业官网页面(记得收藏)
|
28天前
|
前端开发 测试技术 定位技术
如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤
本文深入介绍了如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤。通过实例展示了主页、关于我们、产品展示、新闻动态及联系我们等页面的设计与实现,强调了合理布局、美观设计及用户体验的重要性。旨在为企业打造一个既专业又具吸引力的线上平台。
56 7
|
28天前
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
35 6
|
28天前
|
存储 移动开发 前端开发
高效的 HTML 与 CSS 编写技巧,涵盖语义化标签、文档结构优化、CSS 预处理、模块化设计、选择器优化、CSS 变量、媒体查询等内容
本文深入探讨了高效的 HTML 与 CSS 编写技巧,涵盖语义化标签、文档结构优化、CSS 预处理、模块化设计、选择器优化、CSS 变量、媒体查询等内容,旨在提升开发效率、网站性能和用户体验。
41 5
|
28天前
|
前端开发 JavaScript UED
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势,包括样式表优化、DOM操作减少、图像优化等技术,并分析了电商网站的具体案例,强调了技术演进对Web性能的深远影响。
33 5
|
2月前
|
前端开发 JavaScript 搜索推荐
打造个人博客网站:从零开始的HTML和CSS之旅
【9月更文挑战第32天】在这个数字化的时代,拥有一个个人博客不仅是展示自我的平台,也是技术交流的桥梁。本文将引导初学者理解并实现一个简单的个人博客网站的搭建,涵盖HTML的基础结构、CSS样式的美化技巧以及如何将两者结合来制作一个完整的网页。通过这篇文章,你将学会如何从零开始构建自己的网络空间,并在互联网世界留下你的足迹。
|
1月前
|
JSON 移动开发 数据格式
html5+css3+js移动端带歌词音乐播放器代码
音乐播放器特效是一款html5+css3+js制作的手机移动端音乐播放器代码,带歌词显示。包括支持单曲循环,歌词显示,歌曲搜索,音量控制,列表循环等功能。利用json获取音乐歌单和歌词,基于html5 audio属性手机音乐播放器代码。
116 6