我有一個具有多個背景的按鈕。其中一個背景是包含圖標的CSS-sprite
(864px x 18px)。如果僞元素不可用,還有其他什麼方法可用於裁剪/裁剪背景圖像?
我試圖添加背景到<input>
元素,使其成爲一個帶有圖標的按鈕。問題是,我不能使用:before/:after
,因爲輸入沒有內容,所以我不能添加元素,指定它的比例並使用background-size/position
。
以下是我有:
.buttonUpInput {
background: rgba(0, 0, 0, 0.4), #7EB238;
background-image: none; /* fallback */
background-image: url("http://mysprite.png"), -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(rgba(52,109,28,1)), color-stop(rgba(52,109,28,0))), -webkit-gradient(linear, left top, left bottom, from(#9ad945), to(#7eb238));
background-image: url("http://code.jquery.com/mobile/1.3.0/images/icons-18-white.png"), -webkit-radial-gradient(center, ellipse cover, rgba(52,109,28,1), rgba(52,109,28,0)), -webkit-linear-gradient(#9ad945, #7eb238);
background-image: url("http://code.jquery.com/mobile/1.3.0/images/icons-18-white.png"), -moz-radial-gradient(center, ellipse cover, rgba(52,109,28,1), rgba(52,109,28,0)), -moz-linear-gradient(#9ad945, #7eb238);
background-image: url("http://code.jquery.com/mobile/1.3.0/images/icons-18-white.png"), -ms-radial-gradient(center, ellipse cover, rgba(52,109,28,1), rgba(52,109,28,0)), -ms-linear-gradient(#9ad945, #7eb238);
background-image: url("http://code.jquery.com/mobile/1.3.0/images/icons-18-white.png"), -o-radial-gradient(center, ellipse cover, rgba(52,109,28,1), rgba(52,109,28,0)), -o-linear-gradient(#9ad945, #7eb238);
background-image: url("http://code.jquery.com/mobile/1.3.0/images/icons-18-white.png"), radial-gradient(ellipse at center, rgba(52,109,28,1) 67%, rgba(52,109,28,0) 69%), linear-gradient(#9ad945, #7eb238);
background-attachment: scroll, scroll, scroll;
background-repeat: no-repeat, no-repeat, no-repeat;
background-position: -100px 50%, 7px 50%, center center;
background-size: 864px 18px, 20px 20px, auto auto;
background-clip: content-box, content-box, padding-box;
border: 1px solid #aaa;
-moz-border-radius: .7em;
-webkit-border-radius: .7em;
border-radius: .7em;
color: white !important;
font-size: 16px;
font-weight: 800;
padding: 2px 14px 4px 1px;
text-indent: 35px;
width: auto;
height: 2.25em;
cursor: pointer;
}
問:
我可以嘗試硬編碼/調整按鈕的大小/寬度(我寧願是靈活的),試圖用content-box/padding-box
,但我無法讓它工作。我想知道是否有任何其他方法只用CSS來實現這一點?
謝謝!
耶。使它成爲一個按鈕將是容易的:-)感謝您的SVG提示,我也會研究這一點。 – frequent 2013-04-05 12:24:35
你可能想要考慮使用一個專門的精靈圖表,它的圖標間隔很遠。 SVG在這方面表現出色,因爲無論間距如何,文件大小都保持不變。 – cimmanon 2013-04-05 13:50:01
爲真。我也可以使png從頂部開始,並確保圖標間隔開,因此按鈕邊框將充當「裁剪」邊界。仍然...讓我們看看還有什麼出現。再次感謝! – frequent 2013-04-05 13:53:56