HTML输入(type = image)无法在Firefox 4上运行

时间:2011-06-19 12:34:46

标签: html input

<input  type="image"value="Delete" title="Delete" name="cmd_delete" src="bin/images/common/delete.png"/>

以上HTML代码适用于我的应用程序中的“删除”按钮。问题是这个按钮在Firefox 4中不起作用,但在其他浏览器中有效。请问我该如何解决这个问题。

7 个答案:

答案 0 :(得分:11)

您基本上滥用<input type="image">来获得带有背景图片的按钮。 <input type="image">代表图像映射。按钮上的鼠标位置已作为cmd_delete.xcmd_delete.y参数发送。但是你对鼠标位置不感兴趣。将其替换为普通<input type="submit">并使用CSS指定背景图像。 E.g。

<input type="submit" name="cmd_delete" class="delete" value="" />

input.delete {
    background-image: url('bin/images/common/delete.png');
    width: 20px;
    height: 20px;
    border: 0;
    cursor: pointer;
}

并按如下方式检查

if (isset($_GET['cmd_delete'])) {
    // Delete button pressed.
}

答案 1 :(得分:2)

您可以使用<button name="cmd_delete" value=""><img src=".."/></button>代替输入。

答案 2 :(得分:1)

尝试:

<input type="button" class=”button” value="Delete" title="Delete" name="cmd_delete" />

.button{
      background: url('bin/images/common/delete.png') no-repeat top;
}

答案 3 :(得分:1)

以下在IE,FF(和IE6,BalusC!)中工作:

<input type="submit" value="" style="background-image: url('bin/images/common/delete.png');width:262px;height:37px;border:0;cursor: pointer;" />

答案 4 :(得分:1)

假设:

<input type="image" name="submit" src="signout.png" />

如果您使用的是php,请从

更改您的代码
if(isset($_POST['submit']))

if(isset($_POST['submit_x']))`

答案 5 :(得分:0)

如果设置为非空,请检查$ _REQUEST ['submit_x']。 使用输入类型图像时,较旧的浏览器不会设置$ _REQUEST ['submit']。 真的不知道为什么......

然后就不需要将CSS应用于标签了。

答案 6 :(得分:-1)

使用<button name="cmd_delete" value=""><img src=".."/></button>的问题在于您仍然可以看到图片背后的按钮。看起来很可怕。为什么这个否定投票......这是真的,我试过了!