2007-05-17
如今,许多网站上都会用到统计表,于是我们需要为它们制作一些漂亮的图片来呈现,自然而然又想利用最少的带宽和最简单的标记。在把这些图片放到网页上的方法,一个是插入图片,一个是背景图片。

插入图片的代码固然简单,但是没有语义,跨平台的展示性并不强。那么背景图片呢,在更加没有语义的同时我们还要面临背景图片的两个问题:1.并非所有浏览器的默认设置是可以打印背景图片 2.用户不能复制图片中的数据到word文档或者outlook等其它编辑器。当然,我们可以告诉用户更改浏览器的打印设置,令其可以打印背景图片,但是要求用户这样做明显不是个好主意。接下来,我要介绍是另外一种方法,与以上两种方法完全不同哦~

什么是图表?

举个例子吧,比如:一个网站每月的浏览次数统计。我们需要画出一张下面这样的图表:
2006-11-02

前段写过一篇更人性化的交互表单表现形式,今天再来推荐一款更具亲和力的表单结构。其好处在于:1.标签语义化增强。2.用户体验更好。

好处1的解释:充分运用xhtml固有标签label,将“用户名”、“密码”、“重复密码”等字符放进label标签里,令其具备语义。

好处2的解释:给label赋予for属性,并给后面的input赋予相同的id,用户在点击label里的文字时,对应的input被激活,变得可输入。

废话少说,代码贴上:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Form demo</title>
<style type="text/css">
<!--
body {
 font-family: Arial, Helvetica, sans-serif;
 font-size:12px;
 color:#666666;
 background:#fff;
 text-align:center;

}

* {
 margin:0;
 padding:0;
}

a {
 color:#1E7ACE;
 text-decoration:none; 
}

a:hover {
 color:#000;
 text-decoration:underline;
}
h3 {
 font-size:14px;
 font-weight:bold;
}

pre,p {
 color:#1E7ACE;
 margin:4px;
}
input, select,textarea {
 padding:1px;
 margin:2px;
 font-size:11px;
}
.buttom{
 padding:1px 10px;
 font-size:12px;
 border:1px #1E7ACE solid;
 background:#D0F0FF;
}
#formwrapper {
 width:450px;
 margin:15px auto;
 padding:20px;
 text-align:left;
 border:1px solid #A4CDF2;
}

fieldset {
 padding:10px;
 margin-top:5px;
 border:1px solid #A4CDF2;
 background:#fff;
}

fieldset legend {
 color:#1E7ACE;
 font-weight:bold;
 padding:3px 20px 3px 20px;
 border:1px solid #A4CDF2; 
 background:#fff;
}

fieldset label {
 float:left;
 width:120px;
 text-align:right;
 padding:4px;
 margin:1px;
}

fieldset div {
 clear:left;
 margin-bottom:2px;
}

.enter{ text-align:center;}
.clear {
 clear:both;
}

-->
</style>
</head>

<body>
<div id="formwrapper">

<h3>已注册用户登录</h3>
 <form action="" method="post" name="apLogin" id="apLogin">
 <fieldset>
  <legend>用户登录</legend>
  <div>
   <label for="Name">用户名</label>
   <input type="text" name="Name" id="Name" size="18" maxlength="30" /><br />
  </div>
  <div>
   <label for="password">密码</label>
   <input type="password" name="password" id="password" size="18" maxlength="15" /><br />
  </div>
  <div class="cookiechk">
   <label><input type="checkbox" name="CookieYN" id="CookieYN" value="1" /> <a href="#" title="选择是否记录您的信息">记住我</a></label>
   <input name="login791" type="submit" class="buttom" value="登录" />
  </div> 
  <div class="forgotpass"><a href="#">您忘记密码?</a></div> 
 </fieldset>
 </form><br />
 <h3>未注册创建帐户</h3>
 <form action="" method="post" name="apForm" id="apForm">
 <fieldset>
  <legend>用户注册</legend>
  <p><strong>您的电子邮箱不会被公布出去,但是必须填写.</strong> 在您注册之前请先认真阅读服务条款.</p>
  <div>
  <label for="Name">用户名</label>
  <input type="text" name="Name" id="Name" value="" size="20" maxlength="30" />
  *(最多30个字符)<br /> 
 </div>
  <div>
  <label for="Email">电子邮箱</label>
  <input type="text" name="Email" id="Email" value="" size="20" maxlength="150" /> *<br /> 
 </div> 
  <div>
  <label for="password">密码</label>
  <input type="password" name="password" id="password" size="18" maxlength="15" />
  *(最多15个字符)<br />
 </div>
  <div>
  <label for="confirm_password">重复密码</label>
  <input type="password" name="confirm_password" id="confirm_password" size="18" maxlength="15" />
  *<br />

 </div>
  <div>
  <label for="AgreeToTerms">同意服务条款</label>
      <input type="checkbox" name="AgreeToTerms" id="AgreeToTerms" value="1" />
      <a href="#" title="您是否同意服务条款">先看看条款?</a> * </div>  
  <div class="enter">
     <input name="create791" type="submit" class="buttom" value="提交" />
     <input name="Submit" type="reset" class="buttom" value="重置" />
 </div>

  <p><strong>* 在提交您的注册信息时, 我们认为您已经同意了我们的服务条款.<br />
     * 这些条款可能在未经您同意的时候进行修改.</strong></p> 
 </fieldset>
 </form>
</div>
</body>
</html>

2006-09-12

前些日子整理伪对象伪元素,发现个好东西,总结一下,拿出来帖在这里:

<?xml version="1.0" encoding="gb2312"?>
<!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>更加易用且人性化的表单样式</title>
<style type="text/css">
<!--
body {
  font-family: "宋体";
  font-size: 12px;
}
#logonForm {
  background: #333;
  padding: 3px;
  text-align: center;
  width: 350px;
  color: #FFF;
}
input {
  font-size: 12px;
  background: #FFF;
  border: 2px solid #000;
  padding: 1px;
}
input:hover,input:focus:hover {
  font-size: 12px;
  border: 2px solid #F60;
}
input:focus {
  font-size: 12px;
  border: 2px solid #F90;
}
-->
</style>
</head>

<body>
<form id="logonForm" name="logonForm" method="post" action="">
 用户名:
 <input name="id" type="text" size="12" />
 密码:
 <input name="password" type="text" size="12" />
 <label>
 <input name="Submit" type="submit"  value="登录" />
 </label>
</form>
</body>
</html>

只是给input加了个:focus属性,它就能在用户输入资料时感受到奇特的交互效果。非常有用不是么?

共1页 1