如何为HTML5和CSS3编程的AJAX元素添加主题

时间:2020-02-23 14:28:39  来源:igfitidea点击:

jQuery主题工具使通过CSS3装饰元素非常容易。
jQuery主题的伟大之处在于它们是语义性的。
也就是说,您指定元素的一般用途,然后让主题应用适当的特定CSS。
您可以使用themeRoller应用程序轻松创建新主题或者修改现有主题。

许多jQuery界面元素都会自动使用当前的CSS主题。
当然,您也可以将它们应用于您自己的任何元素以获得一致的外观。

主题只是CSS类。
要将CSS主题应用于元素,您只需向对象添加一个特殊的类。

例如,通过添加以下代码,可以使一段看起来像ui-widget的当前定义:

<div class = "ui-widget">
My div now looks like a widget
</div>

当然,在HTML中添加类违反了语义设计的原则之一,因此最好使用jQuery与JavaScript一起工作:

function themify(){
//add theme-based CSS to the elements
$("div").addClass("ui-widget")
.addClass("ui-widget-content")
.addClass("ui-corner-all");
$(":header").addClass("ui-widget-header")
.addClass("ui-corner-all");
$("#resizeMe")
.append('<span class = "ui-icon ui-icon-star"></span>');
}

themify()函数将所有主题添加到页面上的元素,并为其应用漂亮的jQuery主题。

  • 用jQuery识别所有div。

  • 将ui-widget类添加到所有div。

此类在主题中定义。
所有jQuery主题都定义了此类,但具体内容因主题而异。
这样,您可以换出主题以更改外观,并且代码仍然有效。
ui-widget类将元素定义为小部件。

  • 也添加ui-widget-content。

div需要连接两个类,因此某些程序员使用链接来指定div也应该是该类的成员。
此ui-widget-content类指示应为小部件的内容设置样式。

  • 指定圆角。

圆角已成为Web 2.0视觉设计的标准。
使用jQuery可以非常轻松地实现这种效果—只需将ui-corner-all类添加到要具有圆角的任何元素即可。

圆角使用CSS3,并非所有浏览器都支持。
您的页面在较旧的浏览器中不会显示圆角,但是在其他情况下,该页面仍然可以正常工作。

  • 使所有标题符合小部件标题样式。

jQuery主题包括漂亮的标题样式。
您可以轻松地使所有标题标签(H1至H6)都遵循此主题。
使用:header过滤器可以识别所有标题,并将ui-widget-header和ui-corner-all类应用于这些标题。

jQuery UI包支持许多有趣的类。

ClassUsed OnDescription
ui-widgetOuter container of widgetMakes element look like a widget.
ui-widget-headerHeading elementApplies distinctive heading appearance.
ui-widget-contentWidgetApplies widget content style to element and children.
ui-state-defaultClickable elementsDisplays standard (unclicked) state.
ui-state-hoverClickable elementsDisplays hover state.
ui-state-focusClickable elementsDisplays focus state when element has keyboard focus.
ui-state-activeClickable elementsDisplays active state when mouse is clicked on element.
ui-state-highlightAny widget or elementSpecifies that an element is currently highlighted.
ui-state-errorAny widget or elementSpecifies that an element contains an error or warningmessage.
ui-state-error textText elementAllows error highlighting without changing other elements(mainly used in form validation).
ui-state-disabledAny widget or elementDemonstrates that a widget is currently disabled.
ui-corner-all, ui-corner-tl (etc)Any widget or elementAdds current corner size to an element. Specify specificcorners with tl, tr, bl, br, top, bottom, left, right.
ui-widget-shadowAny widgetApplies shadow effect to a widget.

UI主题中定义了其他一些类,但这些是最常用的类。
有关更多详细信息,请参考当前的jQuery UI文档。

如何添加图标

注意元素内出现的小开始。
此元素是jQuery UI图标的示例。
所有jQuery主题都支持一组标准的图标,这些图标是小图片(16像素见方)。
图标集包括用于箭头的标准图标以及菜单和工具栏中常用的图像。

一些jQuery UI元素会自动使用图标,但是您也可以直接添加它们。
要在程序中使用图标,请按照下列步骤操作:

  • 包括一个jQuery UI主题。

图标是主题包的一部分。
包括与主题相对应的CSS样式表。

  • 确保可以访问图像。

下载主题包时,它包含图像目录。
此目录中包含的图像用于创建自定义背景以及图标。
CSS文件期望一个名为CSS的目录。

该目录应包含多个以ui-icons开头的图像。
这些图像包含所有必要的图标。
如果图标图像文件不可用,则图标不会显示。

  • 在要显示图标的位置创建一个跨度。

在您希望图标出现在HTML中的任何地方放置一个空的span元素。
您可以根据需要将跨度直接放在HTML中,也可以通过jQuery添加跨度。

  • 将ui-icon类附加到跨度。

这告诉jQuery将范围视为图标。
范围的内容将被隐藏,并且范围将被调整大小以容纳16像素的正方形图标图像。

  • 附加第二类以标识特定的图标。

查看themeRoller页面以查看可用的图标。
将鼠标悬停在此页面上的图标上时,您可以看到与该图标关联的类名称。

您可以像这样直接在HTML中添加代码:

<p id = "myPara">
This is my text
<span class = "ui-icon ui-icon-star"></span>
</p>

或者,您可以使用jQuery将适当的代码添加到您的元素中:

$("#myPara").append('<span class = "ui-icon ui-icon-star"></span>');