是否有可能让Cufon按下按钮?

时间:2009-08-22 11:15:37

标签: html css forms html5 cufon

所以现在我正在抨击我的头 - 目前我们使用按钮元素给它我们自己的自定义字体,很好 - 这很有效,但是当我们在网站的其余部分使用Cufon时,我们想知道是否有可能让Cufon按下按钮。

到目前为止,我已经将按钮更改为a并在'input'或'input [type =“submit”]'元素上使用标准css样式工作正常 - 但我已经尝试了这两个在cufon到no果。

这是一个按钮 - 所以当Cufon生成图像时,这应该可行,但也许我做错了 - 有人可以帮忙吗?

4 个答案:

答案 0 :(得分:7)

$('.input-button').each(function(){
    $(this).hide().after('<span class="input-button">').next('span.input-button').text($(this).val()).click(function(){
        $(this).prev('input.input-button').click();
    });
});

我使用上面的代码将输入值复制到span中,这允许我使用cufon。它工作得很好,但仍然会在禁用javascript的情况下回退到“提交”输入。

答案 1 :(得分:5)

以下列方式使用元素:

<button type="buton">value</button>

在应用Cufon风格时起作用:

Cufon.replace('button', {color: '-linear-gradient(#999, 0.45=#666, 0.45=#555, #999)'});

非常感谢:)

答案 2 :(得分:3)

我认为没有办法让Cufon与<input type="submit" />合作。 主要原因是没有地方插入画布...

但是,您可以简单地切换到更符合语义的<button>,这需要闭包</button>,从而为画布创建场所。

非常重要的是,请确保您也使用它来指定类型,因为如果不这样做,IE7及以下版本将不会提交表单。似乎指定类型会导致所有浏览器的统一行为。

如果上述情况有帮助,请告诉我! 干杯

答案 3 :(得分:1)

我发现在<input type="submit"/>按钮上使用Cufon的唯一解决方案是使用Javascript(个人jQuery)。

  1. 将输入按钮的文本(“值”属性)复制到范围。
  2. 使用Cufon.replace()
  3. 替换范围
  4. 删除输入按钮的文字
  5. 将跨度放在按钮上
  6. 将span()中的click()事件传播到按钮
  7. 完成!