如何为输入类型=“按钮”添加背景图像?

时间:2010-04-29 16:16:36

标签: html css button

我一直在尝试通过css更改输入按钮的背景图像,但它不起作用。

search.html:

<body>
    <form name="myform" class="wrapper">
        <input type="text" name="q" onkeyup="showUser()" />
        <input type="button" name="button" value="Search" onclick="showUser()" class="button"/>
         <p>
             <div id="txtHint"></div>
         </p>
    </form>
</body>

search.css:

.button {
    background-image: url ('/image/btn.png') no-repeat;
    cursor:pointer;
}

可能出错?

即使内联css似乎也不起作用。

5 个答案:

答案 0 :(得分:52)

您需要输入不带image字样的内容。

background: url('/image/btn.png') no-repeat;

两种方式都经过测试,这个方法有效。

示例:

<html>
    <head>
        <style type="text/css">
            .button{
                background: url(/image/btn.png) no-repeat;
                cursor:pointer;
                border: none;
            }
        </style>
    </head>
    <body>
        <input type="button" name="button" value="Search" onclick="showUser()" class="button"/>
        <input type="image" name="button" value="Search" onclick="showUser()" class="button"/>
        <input type="submit" name="button" value="Search" onclick="showUser()" class="button"/>
    </body>
</html>

答案 1 :(得分:15)

只是为了添加答案,我认为除了错误的no-repeat之外,本案例中的具体原因是url(之间的空格:

background-image: url ('/image/btn.png') no-repeat; /* Won't work */
background-image: url('/image/btn.png'); /* Should work */

答案 2 :(得分:4)

background-image将网址作为值。使用

background-image: url ('/image/btn.png');

background: url ('/image/btn.png') no-repeat;

的简写
background-image: url ('/image/btn.png');
background-repeat: no-repeat;

另外,您可能需要查看button HTML element的花式提交按钮。

答案 3 :(得分:3)

如果这是提交按钮,请使用<input type="image" src="..." ... />

http://www.htmlcodetutorial.com/forms/_INPUT_TYPE_IMAGE.html

如果您想使用CSS指定图片,you'll have to use type="submit"

答案 4 :(得分:0)

.button{
    background-image:url('/image/btn.png');
    background-repeat:no-repeat;
}