CSS——CSS滑动门及其应用(制作微信导航栏) ※

简介: CSS——CSS滑动门及其应用(制作微信导航栏) ※

滑动门


先来体会下现实中的滑动门,或者你可以叫做推拉门:



滑动门出现的背景


制作网页时,为了美观,常常需要为网页元素设置特殊形状的背景,比如微信导航栏,有凸起和凹下去的感觉,最大的问题是里面的字数不一样多,咋办?



为了使各种特殊形状的背景能够自适应元素中文本内容的多少,出现了CSS滑动门技术。它从新的角度构建页面,使各种特殊形状的背景能够自由拉伸滑动,以适应元素内部的文本内容,可用性更强。 最常见于各种导航栏的滑动门。


核心技术


核心技术就是利用CSS精灵(主要是背景位置)和盒子padding撑开宽度, 以便能适应不同字数的导航栏。


一般的经典布局都是这样的:


<li>
  <a href="#">
    <span>导航栏内容</span>
  </a>
</li>


总结:


  1. a 设置 背景左侧,padding撑开合适宽度。


  1. span 设置背景右侧, padding撑开合适宽度 剩下由文字继续撑开宽度。


  1. 之所以a包含span就是因为 整个导航都是可以点击的。


案例:制作微信导航栏(用滑动门)


资源


wx.jpg



ao.jpg



to.jpg



效果图



代码


<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>微信导航栏</title>
  <style>
    body {
      background: url(images/wx.jpg) repeat-x;
    }
    .nav li {
      list-style-type: none;
      float: left;
      margin: 0px 15px;
    }
    .nav a {
      /*1. a 左边放 左圆角   但是文字需要往右走 15px*/
      color: #fff;
      height: 33px;
      line-height: 33px; /*竖直居中*/
      text-decoration: none;
      background: url(images/to.png) no-repeat;
      padding-left: 15px;
      display: inline-block;
    }
    .nav span {
      /*2. span 右边放右圆角   但是文字需要往左走 15px*/
      background:  url(images/to.png) no-repeat right;
      height: 33px;
      padding-right: 15px;
      display: inline-block;
    }
    .nav a:hover,.nav a:hover span {
      background-image: url(images/ao.png);
    }
  </style>
</head>
<body>
  <ul class="nav">
    <li>
      <a href="#">
        <span>首页</span>
      </a>
    </li>
    <li>
      <a href="#">
        <span>还可以</span>
      </a>
    </li>
    <li>
      <a href="#">
        <span>我是很长的滑动门,讲究门面</span>
      </a>
    </li>
    <li>
      <a href="#">
        <span>短亦</span>
      </a>
    </li>
  </ul>
</body>
</html>
相关文章
|
1月前
|
编解码 前端开发 UED
解密CSS单位:px、em、vh的区别与应用
解密CSS单位:px、em、vh的区别与应用
40 0
|
2月前
|
XML 前端开发 数据格式
CSS应用
CSS应用
17 0
|
29天前
|
小程序 前端开发 JavaScript
微信小程序全栈开发中的PWA技术应用
【4月更文挑战第12天】本文探讨了微信小程序全栈开发中PWA技术的应用,PWA结合Web的开放性和原生应用的性能,提供离线访问、后台运行、桌面图标和原生体验。开发者可利用Service Worker实现离线访问,Worker处理后台运行,Web App Manifest添加桌面图标,CSS和JavaScript提升原生体验。实践中需注意兼容性、性能优化和用户体验。PWA技术能提升小程序的性能和用户体验,助力开发者打造优质小程序。
|
10天前
|
安全 Java Linux
企业微信应用结合Cpolar内网穿透实现固定域名验证回调本地接口服务
企业微信应用结合Cpolar内网穿透实现固定域名验证回调本地接口服务
|
10天前
|
缓存 移动开发 前端开发
【专栏:HTML与CSS前端技术趋势篇】HTML与CSS在PWA(Progressive Web Apps)中的应用
【4月更文挑战第30天】PWA(Progressive Web Apps)结合现代Web技术,提供接近原生应用的体验。HTML在PWA中构建页面结构和内容,响应式设计、语义化标签、Manifest文件和离线页面的创建都离不开HTML。CSS则用于定制主题样式、实现动画效果、响应式布局和管理字体图标。两者协同工作,保证PWA在不同设备和网络环境下的快速、可靠和一致性体验。随着前端技术进步,HTML与CSS在PWA中的应用将更广泛。
|
10天前
|
前端开发 JavaScript 搜索推荐
【专栏:HTML 与 CSS 前端技术趋势篇】HTML 与 CSS 在 Web 组件化中的应用
【4月更文挑战第30天】本文探讨了HTML和CSS在Web组件化中的应用及其在前端趋势中的重要性。组件化提高了代码复用、维护性和扩展性。HTML提供组件结构,语义化标签增进可读性,支持用户交互;CSS实现样式封装、布局控制和主题定制。案例展示了导航栏、卡片和模态框组件的创建。响应式设计、动态样式、CSS预处理器和Web组件标准等趋势影响HTML/CSS在组件化中的应用。面对兼容性、代码复杂度和性能优化挑战,需采取相应策略。未来,持续发掘HTML和CSS潜力,推动组件化开发创新,提升Web应用体验。
|
11天前
|
编解码 前端开发 UED
【专栏:HTML与CSS实践篇】HTML与CSS在电商网站中的应用
【4月更文挑战第30天】本文探讨了HTML和CSS在电商网站中的关键作用。HTML作为基础结构,定义网页内容和布局,用于页面布局、内容展示和表单处理;而CSS则负责样式设计和美化,包括响应式设计、交互效果和模块化,两者结合创建出功能齐全、视觉吸引力强的在线购物环境,提升用户体验。
|
11天前
|
前端开发 JavaScript 安全
【亮剑】探讨了在React TypeScript应用中如何通过道具(props)传递CSS样式,以实现模块化、主题化和动态样式
【4月更文挑战第30天】本文探讨了在React TypeScript应用中如何通过道具(props)传递CSS样式,以实现模块化、主题化和动态样式。文章分为三部分:首先解释了样式传递的必要性,包括模块化、主题化和动态样式以及TypeScript集成。接着介绍了内联样式的基本用法和最佳实践,展示了一个使用内联样式自定义按钮颜色的例子。最后,讨论了使用CSS模块和TypeScript接口处理复杂样式的方案,强调了它们在组织和重用样式方面的优势。结合TypeScript,确保了样式的正确性和可维护性,为开发者提供了灵活的样式管理策略。
|
22天前
|
存储 监控 前端开发
局域网管理软件的前端设计与实现:HTML/CSS在网络拓扑展示中的应用
本文探讨了局域网管理软件的前端设计,强调了HTML/CSS在网络拓扑展示中的作用。通过HTML/CSS创建设备节点和绘制连线,实现清晰的网络设备连接展示。此外,利用JavaScript定时收集监控数据,并通过HTTP请求自动提交到网站,便于管理员进行数据分析,提升了局域网管理效率。
72 3
|
1月前
|
小程序 程序员
【uniapp微信小程序】自定义导航栏:非首页展示的实现方式(极为快捷方式)
【uniapp微信小程序】自定义导航栏:非首页展示的实现方式(极为快捷方式)
21 0