DivCSS实例教程:Form表单内textarea背景图片设置

DivCSS实例教程:Form表单内textarea背景图片设置

 网站开发的过程不可避免的会遇到表单元素的应用。表单form元素是网页里面一种相对特殊的元素,它用来搜集信息。表单一般有多个元素组成,最常见的有,文本框、单选或复选、下拉菜单、文本域和按钮等。

  为了美化页面,常常将表单元素设计在不同的外观样式。可以给文本框设置不同的背景色、边框和文字颜色等,文本域一般是一个较大的区域,可以加入背景图片予以美化。前几日,有一位朋友在进行文本域textarea背景图片设置的时候遇到了一点问题。背景图片并不是静止的,会随着文本域内的内容增加而出现位置上的变化。下面开始一步一步加以说明。

  首先来看一下本实例的效果。


  这是一个简单的表单,由两个元素组成。上部是文本域textarea,下部是一个提交按钮input。编写XHTML代码如下。
Example Source Code [www.52css.com]
<form action="http://www.52css.com/" method="post" id="MrJin" name="MrJin">
<textarea name="MrJin_52CSS" id="MrJin_52CSS" cols="" rows=""></textarea>
<input name="Submit" type="submit" value="Submit" />
</form>
<p>
DivCSS实例教程:Form表单内textarea背景图片设置 -
<a href="http://www.52CSS.com/" target="_blank">www.52CSS.com</a>
</p>

  建立一个表单form,并赋予其id为MrJin。在其内部建立一个文本域textarea元素,赋予id为MrJin_52CSS。最后放置一个提交按钮。
  下面开始CSS样式定义,编码如下。
Example Source Code [www.52css.com]
#MrJin_52CSS {
display:block;
width:350px;
height:240px;
background:url(bg.jpg) no-repeat 10px 30px;
border:1px solid #06f;
padding:5px;
}

  将textarea元素转换为块元素,设置其宽度和高度,定义背景图片为bg.jpg,不重复,定位于x轴10px、y轴30px。设置边框为1像素的实线,颜色为#06f。为了使输入文本与边框之间有一定的距离,设置内边距为5px。

  下面是本案例所用到的背景图片:


  看此时表单的运行效果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>DivCSS实例教程:Form表单内textarea背景图片设置 - www.52CSS.com</title><br />
<style type="text/css">
#MrJin_52CSS {
display:block;
width:350px;
height:240px;
background:url(http://www.52css.com/attachments/month_0804/c20084189415.jpg) no-repeat 10px 30px;
border:1px solid #06f;
padding:5px;
}
</style>
</head>

<body>
<form action="http://www.52css.com/" method="post" id="MrJin" name="MrJin">
<textarea name="MrJin_52CSS" id="MrJin_52CSS" cols="" rows=""></textarea>
<input name="Submit" type="submit" value="Submit" />
</form>
<p>DivCSS实例教程:Form表单内textarea背景图片设置 - <a href="http://www.52CSS.com/" target="_blank">www.52CSS.com</a></p>
</body>
</html>

运行上面的代码,试着在文本域textarea内输入文字,多敲几个换行回车的时候发现,背景图产生了移动,跑到上面去了。这是因为文本域的面积发生着变化。在IE6和IE7中,都是这样理解的。FF除外。

  在背景图片的CSS定义中,有这样一个属性。
  background-attachment : scroll | fixed
  设置或检索背景图像是随对象内容滚动还是固定。
  scroll: 背景图像是随对象内容滚动
  fixed:背景图像固定
  在本案例中,希望背景图像是固定的,所以是:
  background-attachment:fixed;
  将此属性的定义加入到上面的代码中,再查看运行效果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>DivCSS实例教程:Form表单内textarea背景图片设置 - www.52CSS.com</title><br />
<style type="text/css">
#MrJin_52CSS {
display:block;
width:350px;
height:240px;
background:url(http://www.52css.com/attachments/month_0804/c20084189415.jpg) no-repeat 10px 30px;
background-attachment:fixed;
border:1px solid #06f;
padding:5px;
}
</style>
</head>

<body>
<form action="http://www.52css.com/" method="post" id="MrJin" name="MrJin">
<textarea name="MrJin_52CSS" id="MrJin_52CSS" cols="" rows=""></textarea>
<input name="Submit" type="submit" value="Submit" />
</form>
<p>DivCSS实例教程:Form表单内textarea背景图片设置 - <a href="http://www.52CSS.com/" target="_blank">www.52CSS.com</a></p>
</body>
</html>

现在问题得到了解决,在IE6、IE7和FF中得到了基本一致的效果。输入很多文字也不会出现背景图片位移的情况了。
  虽然在个别浏览器中存在着一定的差异,但不影响正常使用了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值