CSS3 的按鈕怎麼快速實現樣式?
2013-1-7更新:
2012-12-12 日,Adobe 發布了 Photoshop 13.1 (CS 6.1)版本,更新了一些與時俱進的功能,比如:Retina Display,CSS 導出功能……不過目前來說還沒有 css3ps 這個插件完善,當然還是有亮點滴:- 可以批量導出 CSS,比如選中整個圖層組,然後就能導出其中每個圖層的css代碼。
- 導出的 CSS class 名稱=圖層名稱,比如一個圖層叫 icon,導出的 CSS 就是 .icon{……}。
至此,PS 和 FW 的基情越來越好了。
或許更多人熟知的是 Photoshop,但是同為 Adobe 公司的產品,Fireworks(以下簡稱 fw) 才是專門針對網頁設計的,所以在 fw CS6 中加入了更多 CSS3 的特性,這裡就有漸變按鈕的快速轉換為 CSS,一圖勝千言:
生成樣式如下:/* Firefox v3.6+ */
background-image:-moz-linear-gradient(50% 0% -90deg,rgb(255,127,0) 0%,rgb(255,185,115) 100%); /* safari v4.0+ and by Chrome v3.0+ */background-image:-webkit-gradient(linear,50% 0%,50% 104%,color-stop(0, rgb(255,127,0)),color-stop(1, rgb(255,185,115)));
/* Chrome v10.0+ and by safari nightly build*/background-image:-webkit-linear-gradient(-90deg,rgb(255,127,0) 0%,rgb(255,185,115) 100%);/* Opera v11.10+ */background-image:-o-linear-gradient(-90deg,rgb(255,127,0) 0%,rgb(255,185,115) 100%);/* IE v10+ */background-image:-ms-linear-gradient(-90deg,rgb(255,127,0) 0%,rgb(255,185,115) 100%);background-image:linear-gradient(-90deg,rgb(255,127,0) 0%,rgb(255,185,115) 100%);width:157px;height:49px;border-color:rgb(172,172,157);
border-width:1px;/* Firefox v1.0+ */-moz-border-radius:7px;/* Safari v3.0+ and by Chrome v0.2+ */-webkit-border-radius:7px;/* Firefox v4.0+ , Safari v5.0+ , Chrome v4.0+ , Opera v10.5+ and by IE v9.0+ */border-radius:7px;border-style:solid;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffff7f00,endColorstr=#ffffb973,GradientType=0)";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffff7f00,endColorstr=#ffffb973,GradientType=0);
如果用 photoshop 的話@金釗立 的答案很棒,我也去試試 css3ps 這個插件。下載地址是:http://css3ps.com/Download/說說 css3ps 這個插件目前存在的問題:
生成的樣式地址:http://css3.ps/?=559C0663-9802-0B18-1DD5-0B42502B95CE- 樣式是在線生成的,點擊按鈕後打開一個在線頁面,每次生成需要等待20秒;
- 沒有輸出 IE 的漸變濾鏡;
- 投影(box-shadow)的處理有些問題。例如例子中的投影應該是:但是生成後是這樣的:生成代碼的內陰影是box-shadow: -1px 0 5px rgba(155,41,0,.75), inset 0 -1px rgba(105,8,8,.75);
http://css3ps.com/ps插件,直接把ps矢量圖層+圖層樣式轉換成css3.最方便了,沒有之一。必用PS CS 13.1之後自帶CSS導出功能,沒有css3ps效果準確,但是可以批量導出
http://css-tricks.com/examples/ButtonMaker/ 有在線的工具。可以試試。
推薦幾個在線工具,都是老外做的,為啥啊?為啥啊?
- http://css3.pascal-seven.de/
- CSS Button Generator: Create HTML and CSS Button Styles
- HTML5 / CSS3 Box.com
- http://livetools.uiparade.com/index.html
對於代碼效果實現方法,可以學習下面幾個框架
- bootstrap (推薦學習)
- ink
- Foundation
更多的關於css的知識,關注
- CSS精華網站匯總
- CSS高價值文章匯總
好了,這麼多,有啥問題,隨時交流,一起分享
css3ps跟fw導出的還差挺多的
chrome的插件code cola直接在chrome的頁面上修改
css3的按鈕快速實現也要取決於你的按鈕是怎麼設計的啊,
按鈕的樣式有width, height, background-color, border,有的還有圓角-moz-border-radius: 3px;
-webkit-border-radius: 3px;border-radius:3px;
如果背景色帶漸變的話還有:
background: -moz-linear-gradient(top, #647379, #58666b);
background: -webkit-gradient(linear, 0 0, 0 100%, from(#647379), to(#58666b) );
還有陰影:
box-shadow: 0 0 5px 0 #878787;
-webkit-box-shadow: 0 0 5px 0 #878787; -moz-box-shadow: 0 0 5px 0 #878787;
文字陰影:
text-shadow: 0 1px 1px #000;
根據需求,把這些組合到一起就可以了。(顏色,數值自己設)
當然如果你是用a標記做按鈕的話,還得設display: inline-block;
推薦閱讀:
※三個div都做浮動,給第二個div加上clear:both為什麼右邊的還是在本行浮動?(clear:right無效)
※什麼樣的CSS 代碼算是優雅的、高效的?如何寫出這樣的 CSS?
※css3動畫如何讓元素一開始是隱藏的?
※為什麼input不支持偽元素(:after,:before)?
※CSS sprites 的樣式生成工具哪裡有?
TAG:CSS3 |