网站首页 > 技术文章 正文
本篇文章写两个案例。
一个是卡片布局案例,一个是logo平滑切换效果案例。
1.结构伪类选择器案例
布局思路
我将这个卡片分为四行模块。第一行是图片模块,第二行是文字部分,第三行进度条部分,第四行是按钮部分。
HTML代码结构
<div class="demo">
<img src="../images/iphone.jpeg" alt="">
<div>
<p>Apple苹果iphone 6s Plus(A1699) 32G 金色 移动联通电信4G手机</p>
<span>¥6088</span><span>¥6988</span>
</div>
<div>
<p>已售<span>87%</span></p>
<div>
<div></div>
</div>
<p>剩余<span>29</span>件</p>
</div>
<input type="button" value="立即抢购">
</div>
CSS样式结构
我用了标签选择器和结构伪类选择器两种,没有使用类选择器。结构伪类选择器不太适用少量标签元素的。
* {
margin: 0;
padding: 0;
}
div:first-child {
width: 234px;
height: 400px;
background-color: #fcfffc;
border: 1px solid gray;
padding: 0 4px;
margin: 100px auto;
}
img {
height: 206px;
display: block;
margin: 30px auto 25px;
}
p,
span {
font-size: 12px;
color: #797a7a;
}
div:first-child>div {
padding: 0 6px;
}
div:first-child div:nth-of-type(1) p {
margin-bottom: 12px;
}
div:first-child div:nth-of-type(1) span:nth-child(2) {
color: #c9493e;
font-size: 20px;
font-weight: 600;
margin-right: 3px;
}
div:first-child div:nth-of-type(1) span:nth-child(3) {
color: #a2a4a1;
font-weight: 600;
text-decoration: line-through;
}
div:first-child div:nth-of-type(2) {
overflow: hidden;
padding: 2px 6px;
}
div:first-child div:nth-of-type(2) p {
float: left;
font-size: 10px;
line-height: 20px;
}
div:first-child div:nth-of-type(2)>div {
width: 108px;
height: 10px;
border: 1px solid #d5685c;
border-radius: 7px;
float: left;
margin: 5px;
}
div:first-child div:nth-of-type(2)>div>div {
width: calc(80%);
height: 10px;
background-color: #ff5546;
border-radius: 7px 0 0 7px;
border: 0;
margin: 0;
}
div:nth-of-type(2) span {
color: red;
}
input {
width: 234px;
height: 40px;
background-color: #bc2715;
font-size: 16px;
color: #ffdad7;
border: 1px solid #d39f96;
}
input:hover {
cursor:pointer;
}
2.logo过渡案例
布局思路
有一个大盒子.zH,里面包含一个有两个图片的小盒子.logo。当鼠标在大盒子.zH上悬停时切换logo图片。
给小盒子设置定位,通过修改left值,实现过渡效果。
HTML代码结构
<div class="zH">
<div class="logo">
<img src="../images/logo-mi2.png" alt="">
<img src="../images/home.png" alt="">
</div>
</div>
CSS样式结构
.zH {
width: 60px;
height: 60px;
background-color: #ff6f00;
border: 1px solid red;
margin: 150px auto;
position: relative;
overflow: hidden;
}
.logo {
width: 120px;
height: 60px;
background-color: #ff6f00;
overflow: hidden;
position: absolute;
top: 0;
left: 0;
transition: all .5s ease-in-out;
}
.logo img {
height: 60px;
margin: 0;
float: left;
}
.logo:hover {
left: -60px;
}
代码运行结果演示,已经发了一个新的视频上传了,有兴趣的可以去看一下。
明天开始实战操作品优购项目。
猜你喜欢
- 2024-12-26 现代CSS:纯 CSS 实现路径动画 js路径动画
- 2024-12-26 用几行原生JS就可以实现丝滑的元素过渡效果
- 2024-12-26 HTML5引领网页开发新概念 html5设计网页
- 2024-12-26 一篇文章教会你利用html5和css3实现3D立方体效果图
- 2024-12-26 WEB:讲清楚CSS、Less、Sass、Scss
- 2024-12-26 Slideout.js – 滑出式 Web App 导航菜单
- 2024-12-26 Android与IOS的的兼容总结 android和ios
- 2024-12-26 CSS渐变属性的特效 css渐变属性的特效有哪些
- 2024-12-26 改进网站设计的免费jQuery插件Top 7
- 2024-12-26 应用HTML5和CSS3实现举报中心PC端与手机端举报页面的自适应设计
- 02-21走进git时代, 你该怎么玩?_gits
- 02-21GitHub是什么?它可不仅仅是云中的Git版本控制器
- 02-21Git常用操作总结_git基本用法
- 02-21为什么互联网巨头使用Git而放弃SVN?(含核心命令与原理)
- 02-21Git 高级用法,喜欢就拿去用_git基本用法
- 02-21Git常用命令和Git团队使用规范指南
- 02-21总结几个常用的Git命令的使用方法
- 02-21Git工作原理和常用指令_git原理详解
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)