>>分享Web前端开发技术,并对孙卫琴的《精通Vue.js:Web前端开发技术详解》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 25865 个阅读者 刷新本主题
 * 贴子主题:  jQuery UI 主题 回复文章 点赞(0)  收藏  
作者:sunshine    发表时间:2019-08-12 17:33:09     消息  查看  搜索  好友  邮件  复制  引用

  

jQuery UI  主题

      所有的 jQuery UI 插件都允许开发人员无缝集成 UI 小部件到他们网站或应用程序的外观和感观。每个插件通过 CSS 定义样式,且包含了两层样式信息:标准的 jQuery UI CSS 框架样式和具体的插件样式。

      jQuery UI CSS 框架提供了语义表示的类,用来表明小部件内元素的角色,比如标题、内容或可点击区域。这些在所有的小部件中都是一致的,一个可点击的 tab(标签页)、accordion(折叠面板)或 button(按钮)都有相同的  ui-state-default class,用来表明它们是可点击的。当用户鼠标悬浮在这些元素上面时,这个 class 就变成  ui-state-hover,当选中这些元素时则变成  ui-state-active。这些 class 的一致性使得所有部件中具有相似角色或交互状态的元素在外观表现上一致。

     CSS 框架样式封装在一个单独的文件中,名为  ui.theme.css。这个文件时通过 ThemeRoller应用程序来修改的。框架样式只包含影响外观和感观的属性,只要是颜色、背景图像、图标等。所以这些是 "安全的" 样式,不会影响到插件的功能。这种分隔意味着开发人员可以通过在  theme.css 文件中修改颜色和图像来创建一个自定义的外观和感观。由于未来的插件或者 bug 修复将是可用的,这些不通过修改即可与主题一起使用。

      由于框架样式只覆盖了外观和感观,所以还需要包含具体的插件样式表,这些样式表包括了所有额外的让小部件具有功能性的结构样式规则,比如尺寸、内边距、外边距、定位、浮动。每个插件的样式表位于  themes/base 文件夹内,且配合插件进行命名,比如 "jquery.ui.accordion.css"。这些样式必须认真编辑,因为它们与脚本一起提供了框架样式的覆盖。

      我们鼓励所有的开发人员创建 jQuery 插件,jQuery UI CSS 框架使得最终用户更容易定制主题和使用插件。            

主题化

     下面列出了三种主题化 jQuery UI 插件的一般方法:    
  • 下载 ThemeRoller 主题:最早的创建主题的方式是使用ThemeRoller来生成和下载一个主题。这个应用程序将创建一个新的  ui.theme.css 文件和一个包含了所有必需的背景图像及图标精灵的  images 文件夹。这个方法是最早的创建和维护主题的方式,但是它对 ThemeRoller 中提供的选项限制了自定义。
  • 修改 CSS 文件:为了对外观和感观做进一步的控制,您可以选择从默认主题(Smoothness)开始,或者从一个由 ThemeRoller 生成的主题开始,然后调整  ui.theme.css 文件,或者任意一个独立插件的样式表。例如,您可以很容易地调整所有按钮的角半径为不同于其他 UI 组件的值,或者使用自定义设置为图标精灵改变路径。通过一点点的样式范围,您甚至可以在一个 UI 中同时使用多个主题。为了易于维护,建议只更改  ui.theme.css 文件和图像。
  • 重新编写自定义的 CSS:为了最大程度地控制外观和感观,可以重新开始编写每个插件的 CSS,而不使用框架类或者特定的插件样式表。如果想要的外观和感观不能通过修改 CSS 来实现或者使用高度自定义的标记,那么就可以采用这个方法。这个方法要求在 CSS 方面有深厚的专业知识,且要求手动更新未来的插件。
程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 flybird 在 2020-02-27 09:55:04 重新编辑]
  Java面向对象编程-->Lambda表达式
  JavaWeb开发-->使用Session(Ⅰ)
  JSP与Hibernate开发-->映射对象标识符
  Java网络编程-->创建非阻塞的HTTP服务器
  精通Spring-->
  Vue3开发-->Vue简介
  VSCode 开发Vue必备插件
  前端面试官指导前端面试攻略
  深入理解Vue的响应式系统
  总结:Vue的生命周期钩子函数的调用时机
  20分钟带你掌握JavaScript Promise和 Async/Await
  BootStrap, React, Vue的比较
  Node.js 实现远程桌面监控
  jQuery 删除元素
  JavaScript的History 对象
  CSS margin(外边距)
  CSS Border(边框)
  HTML5 内联 SVG
  JavaScript 测试 jQuery
  JavaScript 代码规范
  jQuery Mobile 事件
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。