jQuery 打造动态渐变按钮 详细图文教程_jquery
本教程分为以下三步:
Step1 - Photoshop
Step2 - HTML/CSS
Step3 - JavaScript(jQuery)
Step4 - CSS修改
最终结果如下:
Step1 - Photoshop
1. 新建文件
按钮的尺寸是100px X 80px,但由于我们需要创建一个有两种状态的CSS sprite背景图,所以我们在Photoshop中创建(Ctrl+N)一个长宽为200px X 160px的图片文件,如下图:
2. 创建参考线
为了使绘制按钮更容易,我们创建参考线,从标尺中拉出参考线,如果你找不到标尺,可以按Ctrl+R显示,如下图:
3. 绘制形状
选择工具面板中的矩形工具,设置圆角半径为10px,在画布上绘制形状,如下图:
4. 设置形状样式
接上图最后一步,双击层,打开图层样式窗口,设置形状的样式,首先选择渐变叠加,设置渐变颜色从#3d3d3d到#8b8b8b,如下图:
然后,选择“内发光”,设置混合模式为“正常”,不透明度为100%,颜色设置为#ffffff,图素大小设置为3像素,如下图:
之后,再选择“描边”,设置大小为1像素,位置为“内部”,颜色为黑色#000000,如下图:
5. 添加字体
输入文本,设置文字相对水平和垂直居中,字体为方正准圆简体,字号36点,加粗平滑,颜色为白色(#FFFFFF),如下图:
6. 设置字体样式
同样的双击文字图层,打开文字图层样式,设置字体样式,点击“投影”,设置混合模式为“正常”,颜色为#3e3e3e,不透明度为100%,角度为90度,距离为1像素,大小为2像素;点击“内阴影”,设置混合模式为“正常”,颜色为#454545,不透明度为75%,角度为90度,距离为1像素,大小为2像素,如下图所示:
至此,我们就完成链接状态下的按钮背景图,效果如下:
7. 悬停背景图
制作鼠标悬停状态下的按钮背景图,把图层放入组内,复制组,移动,并重命名,如下图:
8.背景图属性
修改hover背景图的样式属性,打开背景图的图层样式窗口,选择“描边”,修改边框颜色为#004d77;选择“渐变叠加”,修改渐变从#1671a3到#5baedc,如下图:
9. 设置字体样式
打开字体图层样式,选择“投影”,修改投影颜色为#207aad;选择“内阴影”,修改字体颜色为#0d4f74,如下图:
10. 图层半透明
添加图层半透明效果,按以上步骤修改,鼠标悬停背景图如下,最后是再加上一层半透明层,先添加一个200px X 40px的白色层,置顶并设置白色层的透明度为10%,如下图:
最后,我们完成的CSS sprite背景图如下,您也可以点击下载PSD文件。
Step2 - HTML/CSS
按钮的HTML代码很简单:
前端档案
再通过CSS设置一下背景图片就可以了,CSS代码如下:
/*链接按钮样式*/
.button {
width:200px;
height:80px;
display:block;
background:url(bg_button.gif) top no-repeat;
text-indent:-9999px;
}
/*按钮悬停样式*/
.button:hover{
background:url(bg_button.gif) bottom no-repeat;
}
按照我们前面设计的图片,按钮的长宽为200px X 80px,背景图为黑色按钮。这段CSS就能够实现我们示例中的第一种效果(纯CSS效果)。
Step3 - JavaScript/jQuery
通过JavaScript,我们可以让按钮更加炫酷一些,我们需要在之前基础上加一个元素,作为鼠标悬停时候显示的背景层,那么HTML会在DOM加载完成后修改成为:
view sourceprint?前端档案
元素在鼠标悬停前是全透明的,鼠标经过时,逐渐不透明,以达到渐变的效果,动画过程如下图:
通过以上分析,我们可以写出jQuery代码如下,在DOM加载完成后,为按钮链接添加层作为鼠标经过时的背景图,在为元素添加鼠标悬停事件,鼠标经过时,渐变至不透明,鼠标离开时,渐变至全透明。
//把文本包含到元素中,再附加到.button中
$('.jsbutton,.viewbutton,.downloadbutton').wrapInner('').css('textIndent','0').each(function () {
//先设置元素中全透明,再添加鼠标悬停事件
$('span.hover').css('opacity', 0).hover(function () {
$(this).stop().fadeTo(650, 1); //渐变至不透明
}, function () {
$(this).stop().fadeTo(650, 0); //渐变至全透明
});
});
至此,我们完成了JS代码,还要注意一个步骤,CSS修改,见Step4。
Step4 - CSS修改
在纯CSS效果的示例中,我们是利用:hover伪类来实现sprite图片的切换,当我们使用jQuery后,是引入一个层作为鼠标经过时背景图,所以CSS需要做如下修改:
/*之前的按钮悬停样式*/
.button:hover{
background:url(bg_button.gif) bottom no-repeat;
}
修改为
/*不需要在设置:hover的样式,而是设置span.hover的样式*/
.button span.hover {
/*注意要使用绝对定位*/
position: absolute;
display: block;
width:200px;
height:80px;
background:url(bg_button.gif) bottom no-repeat;
text-indent:-9999px;
}
总结
以上我们按4个步骤实现了一个动态渐变按钮,在演示中,我还提供了一个扩展示例,您可以跟着自己实现一个,也可以下载源代码修改定制,当然,您有什么好的提议或者有什么问题,欢迎给我留言。
演示地址 http://demo.jb51.net/js/gcb_download/gradual-change-button.html
下载地址 http://demo.jb51.net/js/gcb_download/gcb_download.rar

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

重新啟動Microsoft團隊如果您在啟動Teams後出現空白畫面,則一個很好的起點是重新啟動應用程式本身。要關閉並重新啟動MicrosoftTeams,請執行以下操作:右鍵單擊工作列通知區域中的Teams圖標,然後從選單中按一下退出。從「開始」功能表或桌面捷徑重新啟動MicrosoftTeams並查看它是否有效。從工作管理員關閉MicrosoftTeams如果Teams進程的基本重新啟動不起作用,請進入工作管理員並結束任務。若要從工作管理員關閉Teams,請執行下列操作

Windows 安全性按鈕是什麼?顧名思義,Windows 安全性按鈕是一項安全性功能,可讓您安全地存取登入功能表並使用密碼登入您的裝置。在這種情況下,智慧型手機絕對領先。但是 Windows 便攜式裝置(例如平板電腦)已經開始添加一個 Windows 安全性按鈕,它不僅僅是一種將不需要的使用者拒之門外的方式。它還提供額外的登入選單選項。儘管如果您試圖在桌上型 PC 或筆記型電腦上找到 Windows 安全性按鈕,您可能會感到失望。這是為什麼?平板電腦與個人電腦Windows 安全性按鈕是一個實體按鈕,存在於平板

許多原因可能使你想要停用傳遞最佳化服務在你的Windows電腦上。但是,我們的讀者抱怨不知道要遵循的正確步驟。本指南將透過幾個步驟討論停用傳遞最佳化服務的方法。要了解有關服務的更多信息,您可能需要查看我們的如何開啟services.msc指南以獲取更多資訊。傳遞優化服務有什麼作用?傳遞優化服務是具有雲端託管解決方案的HTTP下載程式。它允許Windows設備從備用來源下載Windows更新、升級、應用程式和其他大型套件檔案。此外,它還透過允許部署中的多個裝置下載這些套件來幫助減少頻寬消耗。此外,Windo

如何強制重啟iPadMini6強制重啟iPadMini6是透過一系列按鈕按下來完成的,它的工作原理如下:按下並釋放音量調高按下並釋放降低音量按住電源/鎖定按鈕,直到您在螢幕上看到Apple標誌,表明iPadMini已強制重啟僅此而已,您已經強制重啟了iPadMini6!強制重啟通常用於故障排除原因,例如iPadMini被凍結、應用程式被凍結或發生其他一些一般性不當行為。關於強制重啟第6代iPadMini的程序需要注意的一點是,對於所有其他具有超薄邊框並使用

<h3>關於連接我的PS5控制器,我該知道什麼? </h3><p>與DualSense控制器一樣好,有報告指出控制器未連接或未被偵測到。解決此問題的最簡單方法是使用適當的USB電纜將控制器連接到您的PC。 </p><p>有些遊戲本身就支援DualSense。在這些情況下,您只需插入控制器即可。但這引發了其他問題,例如如果您沒有USB電纜或不想使用USB電纜怎麼辦

<ul><li><strong>點選進入:</strong>ChatGPT工具外掛導覽大全</li></ul><h2>在Edge中尋找並移除下載紀錄< /h2><p>與其他瀏覽器一樣,Edge有一個<strong>下載
![更改 Windows 11 上的電源按鈕操作 [5 提示]](https://img.php.cn/upload/article/000/887/227/169600135086895.png?x-oss-process=image/resize,m_fill,h_207,w_330)
電源按鈕可以做的不僅僅是關閉PC,儘管這是桌面用戶的預設操作。如果您想更改Windows11中的電源按鈕操作,它比您想像的要容易!請記住,實體電源按鈕與「開始」功能表中的按鈕不同,以下的變更不會影響後者的操作。此外,您會發現電源選項略有不同,具體取決於它是桌上型電腦還是筆記型電腦。為什麼要在Windows11中更改電源按鈕操作?如果您讓計算機進入睡眠狀態的頻率高於關閉計算機,則更改硬體電源按鈕(即PC上的實體電源按鈕)的行為方式即可。同樣的想法也適用於休眠模式或簡單地關閉顯示器。更改Windows11

Xbox遊戲機是遊戲玩家的最愛。有了新的SeriesX和SeriesS,遊戲幾乎是一種栩栩如生的體驗。 Xbox的控制器是體驗遊戲效果的主要工具。有時控制器連接被切斷或在嘗試將控制器連接到主控制台時遇到一些錯誤。這可能是由於與配對相關的各種問題。這可以透過幾個簡單的步驟來克服。重置XboxSeriesS或XboxSeriesX的控制器第1步:按住控制器上的Xbox按鈕幾秒鐘,關閉控制器。步驟2:在螢幕上,轉到關閉控制器,然後按按鈕A選擇該選項。注意:如果您一直按X
