一、div页面布局
一个好的页面布局很重要,这会让你写代码的时候层次分明;
以2列左侧固定右侧自适应宽度为例子:
这是HTML代码:
<!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>2列左侧固定右侧自适应宽度+头部+尾部</title>
<link href="layout.css" rel="stylesheet" type="text/css" /> </head>
<body>
<div id="container">
<div id="header">This is the Header</div>
<div id="mainContent">
<div id="sidebar">This is the sidebar</div>
<div id="content">2列左侧固定右侧自适应宽度+头部+尾部——</div>
</div>
<div id="footer">This is the footer<span style="display:none">
</div>
</body>
</html>
这是css文件:
body { font-family:Verdana; font-size:14px; margin:;} #container {margin:0 auto; width:100%;}
#header { height:100px; background:#9c6; margin-bottom:5px;}
#mainContent { height:500px; margin-bottom:5px;}
#sidebar { float:left; width:200px; height:500px; background:#cf9;}
#content { margin-left:205px !important; margin-left:202px; height:500px; background:#ffa;}
#footer { height:60px; background:#9c6;}
在这里要注意float的用法以及margin的调整用法。
二、关于在一个div中用多个超链接或者其他相同元素,但其中一个是图片链接,这样会造成图片与同一行的文字会有不整齐的情况,这里有个小技巧来解决,例子如下:
<div class="header_main">
<!--sub module 1【header_main】:This module contains the registration login as well as the personnel information and other information"-->
<div class="listbar">
<a href="javascript:void(0);" id="reg_a">REG</a>
<a href="javascript:void(0);" id="member">USER</a>
|
<a href="javascript:void(0);" id="login_a">LOGING</a>
<a href="javascript:void(0);" id="logout">LOGOUT</a>
<a href="http://zhidao.baidu.com/shop" title="BAIDU_SHOP"><img src="data:images/shop.png" align="absmiddle"></a>
<a href="javascript:void(0);" id="home" onclick="all_target_a('www')">BAIDUHOME</a>
</div>
</div>
在这之中,<img src="data:images/shop.png" align="absmiddle"> align=“absmiddle” 这个标签就会解决这个问题;
三、在同一个页面跳转到另一个页面,不希望改变其他固定的如菜单导航,这个时候可以使用内嵌框架iframe来实现:
<!-- Module 3 begin -->
<div id="mainContent"><!-- Module 3 is mainly used for the need to click on the same page to display an embedded iframe framework -->
<div id="content"><iframe id="ifrpage" name="pagename" style="height:800px; width:100%;"></iframe></div>
</div>
<!-- Module 3 end-->
在其他页面只需通过href的action来调用id或者name就可以,如:
<a href="#" title="个人信息" onclick="javascript:document.getElementById('ifrpage').src='http://www.baidu.com'">个人信息</a>
其中src可以是action
<a href="#" onclick="javascript:document.getElementById('ifrside').src='list/log_list.jsp'">日志管理</a>
或者
<a href="http://www.baidu.com" target="pagename" title="查询信息">查询信息</a>
当然href同样可以是action 如:<a href="list/log_list.jsp" target="pagename" title="查询信息">查询信息</a>
四、在超链接a的情况下,如果不想有超链接有下划线,默认的超链接是有下划线的,在这里可以设置text-decoration: none;如果想恢复则设置text-decoration: underline;
还有就是超链接一旦被访问颜色就会变,这样会影响整个页面的美观,这个时候可以这样设置:
a:link {
color:black;
text-decoration: none;
}
a:visited {
text-decoration: none;
}
a:hover {
color:red;
}
a:active {
text-decoration: none;
}
这个表示:超链接默认颜色为黑色black,没有下划线(a:link),访问过后颜色还是不变,鼠标经过的时候颜色为red红色,活动过后的颜色不变;
五、在使用ul li的时候,想其为作为导航菜单的时候,不希望有点,希望可以在同一行,可以这样设置:
list-style-type:none;这个可以去除点,希望在同一行可以用float:left来实现;
六、补充一点 在内嵌框架iframe内嵌在一个div快中的时候,可能会出现上下滚动条,特别是在宽度在100%的情况下,还是会出现横向滚动条,这样会严重不符合页面的要求,这个时候可以在body的css中设置如:
body{
margin :30px 0 0 0 ;
padding :;
font-size : 12px;
font-family : sans-serif;
background : #fff;
overflow:-Scroll;
overflow-x:hidden
} overflow:-Scroll; overflow-x:hidden;这两句可以解决横向出现滚动条,相应的y就是解决纵向的滚动条;
七、在jQuery中有人老是将JavaScript中的取input中的值搞混淆,下面简单说来句:
在JavaScript中通常可以用getelementById(“#id”).value;
在jQuery中通常使用var v=$('#searchinput').val();来取值; 八、在jQuery中点击一个按钮的时候,希望他跳转到自己所期望的页面可以使用下面这个:
$('#search_button').click(function(){
// alert("button");
var v=$('#searchinput').val(); // alert(v);
if(v==''){
$('#question').dialog('open');
}else{
// alert("sdhsdh");
window.location.href='http://zhidao.baidu.com/search?lm=0&rn=10&pn=0&fr=search&ie=gbk&word='+v;
}
});
window.location.href="www.baidu.com";这个一不小心就会用到,最好记住;
九,下面简单介绍jQuery UI的日历操作:
/*------------------------日历模块------------------------*/
$('#date').datepicker({
/*日期基本操作*/
dateFormat : 'yy-mm-dd',
showWeek : true, // 显示周
//dayNames : ['星期日','星期二','星期三','星期四','星期五','星期六','星期一'], //更改日期长格式,但是这是英文包 不支持 ,如要 请引入中文包
//dayNamesMin :['日','一','二','三','四','五','六'],//引入短格式 可以
//monthNames : ['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'], //长格式 提示一般要引用中文包
//altField : '#abc', //引入到另外一个input中
//altFormat : 'dd/mm/yy', //修改引到的另一个input中的格式
//appendText : 'calendar', //在日历框边加入提示的字段
//weekHeader : '周', //改成中文显示周,介于Safari浏览器乱码,所以使用英文
//firstDay : 1,//修改是从星期几开始 如:国外是从日,一,二,,,,六 中国是从一,二,,,日 /*日历外观*/
//disabled : 'true', //禁用日历
//numberOfMonths : 3,//默认情况下是显示一个日历 ,这是设置日历显示的个数
//numberOfMonths : [3,2],//数组形式显示日历的个人,3代表显示3行,2代表每行显示2个,也就是6个
showOtherMonths : true, //设置当月没有的日期照样显示出来,但是不可以选择
//selectOtherMonths : true,//设置当月没有的日期照样显示出来,但是可以选择
changeMonth : true,//设置月份下拉框可选
changeYear : true,//设置年份下拉框可选
//isRTL : true,//设置日历由右向左绘制
//autoSize : true,//设置是否自动调整控件大小,以适应当前日历格式的输入
//showOn : 'button',//设置按钮来显示日历触发
//buttonText : 'CAL',//设置按钮文字
showButtonPanel : true,//设置开启按钮面板
closeText : 'Close', //设置关闭按钮文本
currentText : 'Today', //设置获取今日日期的按钮文本
nextText : 'Next',//设置下个月的Alt文本
prevText : 'Prev', //设置上一个月的Alt文本
//navigationAsdateFormat : true,//设置当前可以使用nextText,prevText,closeText,currentText 可以使用format格式
//yearSuffix : 'Year',//在年后加文本 /*日期选择项*/
//日期的限制优先级,min和max最高
maxDate : 0,//设置当前的日期之后不可选择
hideIfNoPrevNext : true,//设置下月的点击按钮不存在
yearRange : '1950:2020', //设置年份的长度
});
有些还是值得记住的如以下这些经常会使用到:
$('#date').datepicker({
dateFormat : 'yy-mm-dd',
showWeek : true, // show the week
showOtherMonths : true, //Set up the month if the it have not array always show it but can not choose
changeMonth : true, //Set up in the drop-down box is optional ofthe month
changeYear : true, //Set up in the drop-down box is optional ofthe year
showButtonPanel : true, //Set up the open button panel
closeText : 'Close', //Set the text-button can be close
currentText : 'Today', //Set up for today's date button text
nextText : 'Next', //Set the Alt text of next month
prevText : 'Prev', //Set the Alt text of last month
maxDate : 0, //Choose after setting the current date
hideIfNoPrevNext : true, //Click on the button there is no set next month
yearRange : '1950:2020', //Set the length of the year
});
十、关于弹出框dialog的使用最值得学习掌握:dialog是轻量级的,有很好的界面视化,下面简单说两句:
这是js中的初始化弹出框:
//init the login dialog box
$('#login').dialog({
autoOpen : false,
modal : false,
resizable : false,
width : 400,
height : 320,
buttons : {'login' : function(){
$(this).submit();
}},
});
这是当点击按钮的时候调用dialog:
//when click the login button pop up the login dialog box;
$('#login_a').click(function(){
$('#login').dialog('open');
});
这是HTML中弹出框的代码内容:
<!--begin the login's pop up dialog box -->
<form id="login" title="user login">
<table>
<tr><td>
<label for="user">Account : </label>
</td><td>
<p>
<input type="text" name="login_user" class="text" id="login_user" ></input>
<span class="star">*</span>
</p></td></tr> <tr><td><label for="pass">Password : </label>
</td><td>
<p>
<input type="password" name="login_pass" class="text" id="login_pass" ></input>
<span class="star">*</span>
</p></td></tr>
</table>
<p>
<input type="checkbox" name="expires" id="expires" checked="checked"/>
<label for="expires">keep a week login on </label>
</p>
</form>
<!--end the login's pop up dialog box -->
这是点击按钮:
<div class="header_main"> <!--sub module 1【header_main】:This module contains the registration login as well as the personnel information and other information"-->
<div class="listbar">
<a href="javascript:void(0);" id="reg_a">REG</a>
<a href="javascript:void(0);" id="member">USER</a>
|
<a href="javascript:void(0);" id="login_a">LOGING</a>
<a href="javascript:void(0);" id="logout">LOGOUT</a>
<a href="http://zhidao.baidu.com/shop" title="BAIDU_SHOP"><img src="data:images/shop.png" align="absmiddle"></a>
<a href="javascript:void(0);" id="home" onclick="all_target_a('www')">BAIDUHOME</a>
</div>
</div>
css就不赘述了。