当前位置:  编程技术>WEB前端
本页文章导读:
    ▪session 和jsp      一、Session案例: 1、完成用户的一次性登陆(含验证码) 2、防止表单重复提交:MD5、Base64编码 二、Session对象的状态转换(生命周期) 1、修改HttpSession对象的默认失效时间30分钟 web.xml <sess.........
    ▪行内元素设置宽高(span label a )        像span label 等元素 都是行内元素,仅用height和width控制高宽往往达不到想要的效果,一般都要加上display:block;(独占一行)  或是display:inline-block;(仍为块级元素)    块元.........
    ▪css格式化文本      选择字体font-family: "Times New Roman", Times, serif;注意:字体名称中包含多个单词要用("")括起来。字体颜色color:#cccccc(16进制)color: rgb(0%, 100%, 0%) 或者 color: rbg(0, 255, 0)rgb颜色,百分数表示0-255的一个.........

[1]session 和jsp
    来源: 互联网  发布时间: 2013-11-06
一、Session案例:
1、完成用户的一次性登陆(含验证码)
2、防止表单重复提交:MD5、Base64编码
二、Session对象的状态转换(生命周期)
1、修改HttpSession对象的默认失效时间30分钟
web.xml
<session-config>
  <session-timeout>1</session-timeout><!--失效时间,单位是分钟-->
  </session-config>
三、浏览器IE,在什么情况下会开启一次新的会话。
1、IE7(含)-:
开启一个新的浏览器进程,就是一次新会话。
2、IE8(含)+:
开启一个新的浏览器进程,并没有开始新会话。(文件菜单、开始新会话)


新开启一个Tab页,与原有页面属于同一次会话。
通过一个页面的超链接(target="_blank"),与原有页面属于同一次会话。


四、客户端禁用cookie后,会话数据的保存问题
1、对于使用http://localhost来访问网站,即使客户端禁用了cookie,但是无效。
2、解决办法:URL重写。
http://192.168.1.250:8080/day07/servlet/RegistServlet
---->
http://192.168.1.250:8080/day07/servlet/RegistServlet;JSESSIONID=2983749832743298


String url = HttpServletResponse.encodeURL(/blog_article/String url/index.html)
特点:如果服务器知道客户端没有禁用cookie,那么该方法将不会重写URL。




五、JSP概述及最佳实践
1、更改MyEclipse生成的JSP模板。模板文件与Servlet.java(Servlet模板文件)很近。
2、学好JSP的关键:JSP就是Servlet。一定要记住JSP中的东东会出现在Servlet的什么地方?
3、最佳实践:利用Servlet作为控制器;JSP用于页面显示。


六、JSP语法
1、模板元素:JSP页面中的HTML内容。
2、JSP中的脚本表达式:
作用:输出内容到页面上。
语法:<%=java表达式%>
“java表达式”会原封不动的出现在JSP对应的Servlet的service方法中的out.println(java表达式);参数中
java表达式后面不能有分号。
3、JSP脚本片段
作用:在JSP中嵌入多行java代码。
语法:
<%
多行java代码
%>
多行java代码,会原封不动地出现在对应Serlvet的service方法中。
4、JSP声明
作用:定义成员。
语法:<%! 你的成员%>
声明代码会出现在对应的类中。
5、JSP中注释
语法:<%--这是注释--%>

七、JSP的指令:3个
1、作用:给JSP引擎用的(Tomcat)。不产生任何输出。
2、语法:<%@ 指令名称 指令属性1="值1" ...%>
a、page指令
属性:
language:指示使用脚本语言。默认是java,目前只支持java。
extends:指示JSP对应的Servlet的父类是谁。不要修改。
*import:导入JSP中的java脚本中用到的类。
*session:指示当前页面支不支持会话(拿不到HttpSession对象的引用session)。默认值是true。
可选值true|false.
buffer:字符输出流的缓存。默认值是8Kb。可选值none|8Kb|sizeKb
autoFlush:自动刷新缓存。
isThreadSafe:指示JSP对应的Servlet是否实现SingleThreadModel这个废物。false是实现,
true是不安全的。默认是true。
*errorPage:(转发技术)
指示提示错误的页面的路径。如果以"/"开头表示绝对路径。
配置全局错误提示页面:
web.xml
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/error.jsp</location>
 </error-page>
 <error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
 </error-page>
*isErrorPage:指示是否产生exception对象的引用。true|false.默认值是false
*contentType:response.setContentType("text/html;charset=UTF-8");
*pageEncoding:指示翻译JSP时查的码表。
pageEncoding有2个作用:第一告知引擎查哪个码表读JSP文件进行翻译;
      第二,以指定的编码输出字符,并通知客户端以什么编码显示
*isELIgnored:是否忽略EL表达式。默认值是false。可选值是true\false

b、include指令:(能用静态不用动态)
属性:file,目标资源的路径。如果以"/"开头表示绝对路径。
静态包含:include指令就是静态包含。
动态包含:<jsp:include page=""/>
c、taglib指令
作用:引入外部的标签
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>



作者:Brightshadow11111 发表于2013-2-27 11:00:29 原文链接
阅读:0 评论:0 查看评论

    
[2]行内元素设置宽高(span label a )
    来源: 互联网  发布时间: 2013-11-06

 像span label 等元素 都是行内元素,仅用height和width控制高宽往往达不到想要的效果,一般都要加上display:block;(独占一行)  或是display:inline-block;(仍为块级元素)

   块元素和行内元素也不是一成不变的,只要给块元素定义display:inline,块元素就成了内嵌元素,同样地,给内嵌元素定义了display:block就成了块元素了

  下面我们举例子:

<!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=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
*{
 margin: 0 auto;
 text-align:center
}
div,span{border:1px solid #00f;margin:2; line-height:50px;}

</style>
</head>

<body>
<div>块元素和行内元素也不是一成不变的,只要给块元素定义display:inline,块元素就成了内嵌元素,同样地,给内嵌元素定义了display:block就成了块元素了</div>
<div>div1</div><div>div2</div>
<span>span1</span><span>span2</span>
<br>
<div style="display:inline">div3</div>
<div style="display:inline">div4</div>
<span style="display:block">span3</span>
<span style="display:block">span4</span>

</body>
</html>

作者:wangxiaohui6687 发表于2013-2-27 10:20:30 原文链接
阅读:44 评论:0 查看评论

    
[3]css格式化文本
    来源:    发布时间: 2013-11-06

选择字体

font-family: "Times New Roman", Times, serif;

注意:字体名称中包含多个单词要用("")括起来。

字体颜色

color:#cccccc(16进制)

color: rgb(0%, 100%, 0%) 或者 color: rbg(0, 255, 0)

rgb颜色,百分数表示0-255的一个数

修改字号

font-size

font-szie后面可接keywords(关键字) px 百分比 em

px:即像素值,最为常用,默认文本的像素值为16px;

keywords: 总共有7个关键字,分别为 xx-large, x-large, large, medium, small x-small, xx-small。但是关键字不精确,而且也缺乏灵活性,因此较少使用。

百分比:由于字号是一种可以继承的属性,因此使用百分比有时要通过计算。比如: 浏览器一般默认的字号都为16px,那么你将一个元素的字号设置为100%,那么这个元素的字号就为16px,也就是说100%对应16px,这是一个基准。因此,如果要将该元素的字号变为32px,那么,用百分比表示就是200%,即16 * 2。接下来,我们来看,如果有下面的结构:

<p> <!--字号为20px-->
<span>文本</span> <!--字号为75%-->
</p>

由于span标签会继承p标签的字号20px,因此,此时span的字号计算公式为20 * 0.75(也就是75%) = 15px。类似的结构可以层层嵌套,只要计算一下就可以了。

em: 表示一个大写M的高度。但是他的作用与百分比很相近,1em = 100%, .75em = 75%, 2em = 200%。

格式化词语和字母

斜体化 font-style

italic(斜体) normal(正常) oblique(和italic一样)

粗体 font-weight

你可以选择100-900之间的整百数(900超粗,100不可见),但是由于浏览器支持的原因,用的很少。一般normal(正常) bold(粗体)

大写化

text-transform

uppercase(大写) lowercase(小写) capitalize(首字母大写) none(不进行大小写)

该属性可以被继承

小型大写字母

font-variant: small-cap;

文本修饰

text-decoration

underline line-through overline none

字母间距和字间距

letter-spacing word-spacing

对于这些属性,可以使用文本尺寸(px em 百分比) 正值代表扩大,负值为缩小。

行高

line-height

px em 百分比 缩放因子

要理解行高,首先要理解一些概念,可以参考这篇文章和里面的链接文章《深入理解css中的行高》

使用行高时要注意一些问题:

1 图片会将整行的行框撑开,但是却并不改变实际的行高

2 em和百分比是相对于文本的字号来计算的,比如文本字号为12px,而行高被设置为150%(1.5em),那么行高为12 * 1.5

3 行高可以被继承,但是em和百分比继承的是计算值,而缩放因子继承的是本身。比如p标签的行高被设置为150%,里面文本字号为10px,那么p里面所有标签都将继承15px的行高,而不是150%;但是缩放因子不同,如果p的缩放因子被设置为2,文本字号为10px,那么p里面所有后代标签都将继承2这个值,而不是20px的行高

垂直对齐

vertical-align

baseline:基线对齐

top:顶端对齐

middle:中线对齐

bottom:底端对齐

text-top:文本顶端对齐

text-bottom:文本底端对齐

sub:下标

super:上标

em 百分比

具体可以参考《垂直对齐:vertical-align属性》这篇文章

使用垂直对齐要注意:

1 浏览器的默认对齐方式为基线对齐,但是对于图片没有基线,故图片的底端会和基线对齐

2 em和百分比值是相对于行高值来计算的,用来改变元素基线的高度,可正可负,正数是元素的基线升高,负数使元素的基线下降

3 设置处置对齐可影响行框高

4 这个属性只是用与行内元素,表单元素,以及图片,表格单元格

文本对齐

text-align

left right center justify(两端对齐)

文本缩进

text-indent

px em 百分比

使用文本缩进要注意:

1 px是精确值


    
最新技术文章:
▪css white-space:nowrap属性用法(可以强制文字不...
▪IE里button设置border:none属性无效解决方法
▪border:none与border:0使用区别
▪html清除浮动的6种方法示例
▪三个不常见的 HTML5 实用新特性简介
▪css代码优化的12个技巧
▪低版本IE正常运行HTML5+CSS3网站的3种解决方案
▪CSS Hack大全-教你如何区分出IE6-IE10、FireFox、Chr...
▪ie6,ie7,ie8完美支持position:fixed的终极解决方案
▪小技巧处理div内容溢出
▪html小技巧之td,div标签里内容不换行
▪纯CSS实现鼠标放上去改变文字内容
▪li中插入img图片间有空隙的解决方案
▪CSS3中Transition属性详解以及示例分享
▪父div高度不能自适应子div高度的解决方案
▪告别AJAX实现无刷新提交表单
▪从零学CSS系列之文本属性
▪HTML 标签
▪CSS3+Js实现响应式导航条
▪CSS3实例分享之多重背景的实现(Multiple background...
▪用css截取字符的几种方法详解(css排版隐藏溢...
▪页面遮罩层,并且阻止页面body滚动。bootstrap...
▪CSS可以做的几个令你叹为观止的实例分享
▪详细分析css float 属性以及position:absolute 的区...
▪IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值的完美解...
▪CSS小例子(只显示下划线的文本框,像文字一...
▪可以给img元素设置背景图
▪不通过JavaScript实现的自动滚动视差效果
▪div+CSS 兼容小摘
▪CSS的inherit与auto使用分析
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3