新足迹

 找回密码
 注册

精华好帖回顾

· ++++欧洲申根签证宝典(41楼最重要的注意事项)+++++ (2013-4-5) 小兔白又白 · 开个帖子,说说作为HR或者Recruiter是怎么在筛选简历的 (2018-10-27) 清咖一杯
· 良辰美景-尘埃下的旧照--更久远的记忆 (2005-4-8) ufo · 韭菜盒子和锅贴 (2009-6-20) niuwa
Advertisement
Advertisement
查看: 1634|回复: 12

web 前端高手请进 [复制链接]

发表于 2012-10-19 00:26 |显示全部楼层
此文章由 bc 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 bc 所有!转贴必须注明作者、出处和本声明,并保持内容完整
最近打酱油打到web 上,遇到一个难题,请坛中高手指点。
问题可简单归结为如下:
如何用CSS对如下的form中的submit button 进行图化,就是把按钮做成图形的按钮,而不是浏览器缺省的按钮。

<form>
<input .....>
<input ....>
<some thing else>
...
<input type="submit" value="back">
...
<input tyoe="submit" value="next>
...
</form>

说明:以上的最终代码来自CMS系统,所以我能适当添加一些tag、class或id 进去,但value的值是CMS 生成的,有长有短。
要求:solution要cross browser.
我目前用sliding door实现,但问题是我发现很难做到cross browser, 这方面我没什么经验。

Advertisement
Advertisement

发表于 2012-10-19 09:09 |显示全部楼层
此文章由 bc 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 bc 所有!转贴必须注明作者、出处和本声明,并保持内容完整
自己顶一下。高手通常周五比较有闲。

发表于 2012-10-19 20:36 |显示全部楼层
此文章由 鱼羊鲜 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 鱼羊鲜 所有!转贴必须注明作者、出处和本声明,并保持内容完整

发表于 2012-10-19 21:09 |显示全部楼层
此文章由 razgriz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 razgriz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
很简单,你只要在input前面加一个div, 为div定一个class,然后用CSS设定颜色、背景、大小到这个class上就行了。 Cross browser的最大问题在于颜色渐变效果。最直接的莫过于用firefox的插件colorzilla中的CSS Gradient Generator,拖动控件做出想要的渐变和大小,它会自动生成适合于所有浏览器的渐变效果,直接复制进你的class就可以了。然后边缘弧度,阴影效果等想要的话再适当加点。

以上完全是自定义的方式,嫌麻烦只是找个按键生成的网站或者找个写好的CSS STYLE SHEET,引用后把class加上去就行了。

发表于 2012-10-19 21:24 |显示全部楼层
此文章由 PEACHPANDA 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 PEACHPANDA 所有!转贴必须注明作者、出处和本声明,并保持内容完整
本帖最后由 PEACHPANDA 于 2012-10-19 21:33 编辑

最简单的方法是自己用photoshop画个按钮然后用input type=image 代替 type=submit <input type=image src="你制作的图片">就可以了 ps如果楼主觉得有用,请撒点浮云,谢谢
不好意思没看见是用css,还是楼上说得对。

评分

参与人数 1积分 +3 收起 理由
porcorosso + 3 我也觉得这样最简易

查看全部评分

发表于 2012-10-20 00:29 |显示全部楼层
此文章由 seabookf_91 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 seabookf_91 所有!转贴必须注明作者、出处和本声明,并保持内容完整
本帖最后由 seabookf_91 于 2012-10-19 23:31 编辑

帮你写了一个 凑活着用吧
http://jsfiddle.net/Seabook_JS/xtRv4/


说实话 这样并不是很好 强行用css来改 很多cross browser issue。
实测 chrome,firefox,IE,Safari 没有问题。


Advertisement
Advertisement

发表于 2012-10-20 00:32 |显示全部楼层
此文章由 seabookf_91 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 seabookf_91 所有!转贴必须注明作者、出处和本声明,并保持内容完整
seabookf_91 发表于 2012-10-19 23:29
帮你写了一个 凑活着用吧
http://jsfiddle.net/Seabook_JS/xtRv4/

楼主如果觉得有用 请加点分 也不枉我深夜写代码的辛苦

评分

参与人数 1积分 +1 收起 理由
bc + 1 请再接再厉

查看全部评分

发表于 2012-10-20 12:09 |显示全部楼层
此文章由 bc 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 bc 所有!转贴必须注明作者、出处和本声明,并保持内容完整
razgriz 发表于 2012-10-19 21:09
很简单,你只要在input前面加一个div, 为div定一个class,然后用CSS设定颜色、背景、大小到这个class上就行 ...

由于按钮上的文字不是我可以控制的,也就是长度大小不一,所以我觉得使用固定图片做背景恐怕行不通。

发表于 2012-10-20 12:30 |显示全部楼层
此文章由 bc 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 bc 所有!转贴必须注明作者、出处和本声明,并保持内容完整
seabookf_91 发表于 2012-10-20 00:32
楼主如果觉得有用 请加点分 也不枉我深夜写代码的辛苦

很遗憾,按钮上的文字是必须显示的,所以你的方案同样行不通。不过你倒是提供了几个技巧,如取消按钮上的文字,定义多个class以及那个实验代码的网站。先加一点分,要是还有更好的,再加。

发表于 2012-10-21 14:04 |显示全部楼层
此文章由 鱼羊鲜 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 鱼羊鲜 所有!转贴必须注明作者、出处和本声明,并保持内容完整
被无视了。。。

发表于 2012-10-21 14:10 |显示全部楼层
此文章由 明月星光 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 明月星光 所有!转贴必须注明作者、出处和本声明,并保持内容完整
用js把input直接换掉…… jquery一行代码的事儿……
Advertisement
Advertisement

发表于 2012-10-21 19:37 |显示全部楼层
此文章由 bc 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 bc 所有!转贴必须注明作者、出处和本声明,并保持内容完整
鱼羊鲜 发表于 2012-10-21 14:04
被无视了。。。

我本来就是打酱油的,你给个超市地址,我哪知道我的那瓶在哪。

发表于 2012-10-21 20:04 |显示全部楼层
此文章由 鱼羊鲜 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 鱼羊鲜 所有!转贴必须注明作者、出处和本声明,并保持内容完整

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Advertisement
Advertisement
返回顶部