我想让我的登录页面的提交按钮成为图片而不是灰色按钮。当我使用 css 执行此操作时,我得到了图片顶部的按钮。有没有办法使用
= submit_tag image_tag('image/location.jpg) 'Login', :id => 'Login'
如果我可以将按钮调整到某个尺寸也可以,因为我可以使用 css 将它放置在我想要的位置。
谢谢!
我想让我的登录页面的提交按钮成为图片而不是灰色按钮。当我使用 css 执行此操作时,我得到了图片顶部的按钮。有没有办法使用
= submit_tag image_tag('image/location.jpg) 'Login', :id => 'Login'
如果我可以将按钮调整到某个尺寸也可以,因为我可以使用 css 将它放置在我想要的位置。
谢谢!
据我所知,有一个<input type="image" src="..."/>
可以使图像充当提交按钮。我不知道 ruby on rails,但快速搜索出现了image_submit_tag(source, options = {})
。您可以在此处查看文档。
你有没有尝试过:
.element {
appearance: none;
-webkit-appearance: none;
background-image: url(path/img-png) no-repeat 0 0;
background-size: /* (desired size in pixels or %) */ 40px 50px;
-moz-background-size: /* (desired size in pixels or %) */ 40px 50px;
border: none;
outline: none;
/* any other desired rules */
}
用标签替换<input>
按钮<img>
不是一个好主意,因为它违反了渐进增强的原则:您应该让您的网站尽可能易于访问,同时在浏览器允许的情况下增强其功能。
在您的情况下,有一个纯 CSS 解决方案可以将经典<input type=submit>
按钮转换为图像:
input {
/* sizing the button */
width: 10em;
height: 10em;
/* disabling the system look */
appearance: none;
-webkit-appearance: none;
/* resetting default browser styler */
border: 0;
margin: 0;
padding: 0;
/* hiding button label */
text-indent: -9999px;
/* applying the image */
background: url('http://i.imgur.com/1x8TMLt.jpg') no-repeat transparent;
background-size: 100% 100%; /* stretching */
/* letting users know it's clickable */
cursor: pointer;
}
当 CSS 由于某种原因不可用时,按钮将显示为带有文本标签的按钮。当 CSS 可用时,按钮将显示为给定大小的图像,耶!
演示:http: //jsbin.com/okasut/1/edit
当然,你应该使用一些语义选择器。
submit_tag 生成一个 html input type='submit'
。您需要一个 html button
,rails 可以使用button_tag生成它。
= button_tag :id => 'Login' do
image_tag('image/location.jpg')