CSS2常用选择器类型及其含义
选择器名称 | 案例 | 语法格式 |
标签选择器 | h3{font-size:24px;font-family:"隶书“; }< h3>JSP< /h3> | 元素标签名{样式属性} |
类选择器 | .red {color:#F00;} < li class="red">Oracle< /li> | . 元素标签class属性值{样式属性} |
ID选择器 | #p1 {background-color:#0F0;} < p id="p1">content< /p> | #元素标签id属性值{样式属性} |
包含选择器 | div h3{color:red;} < div> < h3>CSS层叠样式表< /h3> < /div> | 父元素标签 子元素标签{ 样式属性 } |
子选择器 | div>ul{color:blue;} < div> < ul> < li>测试1 < ol> < li>嵌套元素< /li> < li>嵌套元素< /li> < li>嵌套元素< /li> < li>嵌套元素< /li> < /ol> < /li> < li>测试1< /li> < li>测试1< /li> < /ul> < /div> | 父元素标签名>子元素名{ 样式属性 } |
339.引入样式的三种方式及其优先级别
三种引用方式:
1. 外部样式表(存放.css文件中)
不需要style标签
< link rel=”stylesheet” href=”引用文件地址” />
2. 嵌入式样式表
< style type=“text/css”>
p{color:red;}
< /style>
3.内联样式
标签属性名为style
< p style=“color:red;”>< /p>
优先级级别:内联定义最高、内部CSS次之、外部CSS优先级最低。。
340.盒子模型
盒子模型类似于生活中的盒子,具有4个属性,外边距,内边距,边框,内容。
外边距:margin,用于设置元素和其他元素之间的距离。
内边距:padding,用于设置元素内容和边框之间的距离。
边框:border,用于设置元素边框粗细,颜色,线型。
内容:width,height,用于设置元素内容显示的大小。
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
341.JavaScript语言及其特点
Javascript一种基于对象(object-based)和事件驱动(Event Driven)的简单的并具有安全性能的脚本语言。特点:
解释性: JavaScript不同于一些编译性的程序语言,例如C、C++等,它是一种解释性的程序语言,它的源代码不需要经过编译,而直接在浏览器中运行时被解释。
基于对象: JavaScript是一种基于对象的语言。这意味着它能运用自己已经创建的对象。因此,许多功能可以来自于脚本环境中对象的方法与脚本的相互作用。
事件驱动: JavaScript可以直接对用户或客户输入做出响应,无须经过Web服务程序。它对用户的响应,是以事件驱动的方式进行的。所谓事件驱动,就是指在主页中执行了某种操作所产生的动作,此动作称为“事件”。比如按下鼠标、移动窗口、选择菜单等都可以视为事件。当事件发生后,可能会引起相应的事件响应。
跨平台:JavaScript依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持JavaScript的浏览器就可正确执行。
342.JavaScript常用数据类型有哪些
1、数值型(Number):整数和浮点数统称为数值。例如85或3.1415926等。
2、字符串型(String):由0个,1个或多个字符组成的序列。在JavaScript中,用双引号或单引号括起来表示,如“您好”、‘学习JavaScript’等。 不区分单引号、双引号。
3、逻辑(布尔)型(Boolean):用true或false来表示。
4、空(null)值(Null):表示没有值,用于定义空的或不存在的引用。
要注意,空值不等同于空字符串""或0。
5、未定义(Undefined)值:它也是一个保留字。表示变量虽然已经声明,但却没有赋值。
除了以上五种基本的数据类型之外,JavaScript还支持复合数据类型,包括对象和数组两种。
343.html语法中哪条命令用于使一行文本折行,而不是插入一个新的段落? (B)
A. | < TD> |
B. | < BR> |
C. | < P> |
D. | < H1> |
分析: A < td>定义标准表格 C < p>表示文本一个段落 D < h1>表示对文本标题进行强调的一种标签 |
344.Ajax的优点和缺点
优点:减轻服务器的负担,按需取数据,最大程度的减少冗余请求,局部刷新页面,减少用户心理和实际的等待时间,带来更好的用户体验,基于xml标准化,并被广泛支持,不需安装插件等,进一步促进页面和数据的分离
缺点:AJAX大量的使用了javascript和ajax引擎,这些取决于浏览器的支持.在编写的时候考虑对浏览器的兼容性.
345.怎样防止表单刷新重复提交问题?(说出思路即可)
JS脚本方式:
第一种:定义全局变量,在form提交前判断是否已有提交过
1 2 3 4 5 6 7 8 9 10 11 12 |
|
第二种:单击提交按钮后,立刻禁用改按钮
第三种:单击提交按钮后,弹出屏蔽层,防止用户第二次点击
346.JQuery.get()和JQuery.ajax()方法之间的区别是什么?
JQuery.ajax()是对原生的javaScript的ajax的封装,简化了ajax的步骤,用户可用JQuery.ajax()发送get或者post方式请求,Jquery.get()是对ajax的get方式的封装,只能发送get方式的请求。
347.Jquery里的缓存问题如何解决?例如($.ajax()以及$.get())
$.ajax()请求时候加上cache:false的参数,如:
1 2 3 4 5 6 7 8 |
|
$.get()请求时候加上时间,如:
$.get("url","data"+new Date(),function(data){});
348.Javascript是面向对象的,怎么体现Javascript的继承关系?
Javascript里面没有像java那样的继承,javascript中的继承机制仅仅是靠模拟的,可以使用prototype原型来实现
349.Javascript的有几种种变量。变量范围有什么不同?
可以分为三种
1、原生类型(string,number,boolean)
2、对象(Date,Array)
3、特殊类型(var vara;(只什么没有定义),var varb = null;(定义一个变量并赋值为null))
350.Js如何获取页面的dom对象
1、直接获取
//1.1 -- id方式获取
var varid = document.getElementById("unameid");
//1.2 -- name获取(获取的是数组对象)
var varname = document.getElementsByName("sex");
//1.3 -- 元素获取(获取的是数组对象)
var varinput = document.getElementsByTagName("input");
2、间接方式获取
//2.1 父子关系 --childNodes
var varchilds = document.getElementById("div01").childNodes;
//2.2 子父关系--parentNode
var varfather2 = document.getElementById("unameid").parentNode;
//2.3 兄弟之间相互获取 nextSibling:下一个节点 previousSibling:上一个节点
351.Servlet API中forward() 与redirect()的区别?
答:为实现程序的模块化,就需要保证在不同的Servlet之间可以相互跳转,而Servlet中主要有两种实现跳转的方式:FORWARD方式与redirect方式。
Forward() : 是服务器内部的重定向,服务器直接访问目标地址的URL,把那个URL的响应内容读取出来,而客户端并不知道,因此在客户端浏览器的地址栏里不会显示跳转后的地址,还是原来的地址。由于在整个定向的过程中用的是同一个Request,因此FORWARD会将Request的信息带到被定向的JSP或Servlet中使用。
Redirect():则是客户端的重定向,是完全的跳转,即客户端浏览器会获取跳转后的地址,然后重新发送请求,因此浏览器中会显示跳转后的地址。同时,由于这种方式比FORWARD方式多了一次网络请求,因此其效率低于FORWARD方式,需要注意到的是,客户端的重定向可以通过设置特定的HTTP 头或写JavaScript脚本来实现。
鉴于以上的区别,一般当FORWARD方式可以满足需求时,尽可能的使用FORWARD方式。但在有些情况下,例如,需要跳转到一个其他服务器上的资源时,则必须使用redirect 方式。
352.Session域和request域什么区别?
作用域:存放数据,获取数据(传递数据)
有效的作用域:生命周期,作用范围
httpServeltRequest:
生命周期:一次请求之间
作用范围:所有被请求转发过的servlet都能获取到
httpSession:
生命周期:一次会话
作用范围:所有的servlet都可以获取到
servletContex:
生命周期:从项目开始运行到服务器关闭
作用范围:所有的servlet都可以获取到
作用域如何选用?
httpServeltRequest:和当前请求有关的信息
httpSession:和当前用户有关的信息
servletContex:访问量比较大,不易更改
353.页面中有一个命名为bankNo的下拉列表,写js脚本获取当前选项的索引值,如果用jquery如何获取
var a = document.getElementsByName("bankNo")[0].value;
var b = $("select[name=bankNo]").val();
354.写出要求11位数字的正则表达式
^[1-9]\d{10}$
355.分别获取指定name、Id的javascript对象,如果用jquey如何获取
|
356.一个页面有两个form,如何获取第一个form
用id方式获取;document.getElementById("id");
357.如何设置一个层的可见/隐藏
可见 : document.getElementById("divid").style.display = "block";
隐藏 : document.getElementById("divid").style.display = "none";
358.描述JSP中动态INCLUDE与静态INCLUDE的区别?
动态导入
1、会将多个jsp页面分别再编写成java文件,编译成class文件
2、jsp文件中允许有相同的变量名,每个页面互不影响
3、当java代码比较多优先选用动态导入
4、效率相对较低,耦合性低
静态导入
1、会将多个jsp页面合成一个jsp页面,再编写成java文件,编译成class文件
2、jsp文件中不允许有相同的变量名
3、当java代码比较少或者没有java代码是优先选用静态导入
4、效率相对较高,耦合性高
列举JSP的内置对象及方法
request表示HttpServletRequest对象。它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie, header, 和session数据的有用的方法。
response表示HttpServletResponse对象,并提供了几个用于设置送回 浏览器的响应的方法(如cookies,头信息等)
out对象是javax.jsp.JspWriter的一个实例,提供了几个方法使你能用于向浏览器回送输出结果
pageContext表示一个javax.servlejt.sp.PageContext对象。它是用于方便存取各种范围的名字空间、servlet相关的对象的API,并且包装了通用的servlet相关功能的方法。
session表示一个请求的javax.servlet.http.HttpSession对象。Session可以存贮用户的状态信息
applicaton 表示一个javax.servle.ServletContext对象。这有助于查找有关servlet引擎和servlet环境的信息
config表示一个javax.servlet.ServletConfig对象。该对象用于存取servlet实例的初始化参数。
page表示从该页面产生的一个servlet实例
Exception异常
列举jsp的四大作用域
page、request、session、application
html和xhtml的区别是什么?
HTML与XHTML之间的差别,粗略可以分为两大类比较:一个是功能上的差别,另外是书写习惯的差别。关于功能上的差别,主要是XHTML可兼容各大浏览器、手机以及PDA,并且浏览器也能快速正确地编译网页。
因为XHTML的语法较为严谨, 所以如果你是习惯松散结构的HTML编写者,那需要特别注意XHTML的规则。但也不必太过担心,因为XHTML的规则并不太难。下面列出了几条容易犯的错误,供大家引用。
1:所有标签都必须小写
在XHTML中,所有的标签都必须小写,不能大小写穿插其中,也不能全部都是大写。看一个例子。
错误:< Head>< /Head>< Body>< /Body>
正确:< head>< /head>< body>< /body>
2:标签必须成双成对
像是< p>...< /p>、< a>...< /a>、< div>...< /div>标签等,当出现一个标签时,必须要有对应的结束标签,缺一不可,就像在任何程序语言中的括号一样。
错误:大家好< p>我是muki
正确:< p>大家好< /p>< p>我是muki< /p>
3:标签顺序必须正确
标签由外到内,一层层包覆着,所以假设你先写div后写h1,结尾就要先写h1后写div。只要记住一个原则“先进后出”,先弹出的标签要后结尾。
错误:< div>< h1>大家好< /div>< /h1>
正确:< div>< h1>大家好< /h1>< /div>
4:所有属性都必须使用双引号
在XHTML 1.0中规定连单引号也不能使用,所以全程都得用双引号。
错误:< div style=font-size:11px>hello< /div>
正确:< div style="font-size:11px">hello< /div
5:不允许使用target="_blank"
从XHTML 1.1开始全面禁止target属性,如果想要有开新窗口的功能,就必须改写为rel="external",并搭配JavaScript实现此效果。
错误:< a href="http://blog.mukispace.com" target="_blank">MUKI space< /a>
正确:< a href="http://blog.mukispace.com" rel="external">MUKI space< /a>
你做的页面用哪些浏览器测试过?这些测试的内核分别是什么?
1、Trident内核代表产品Internet Explorer,又称其为IE内核。 Trident(又称为MSHTML),是微软开发的一种排版引擎。使用Trident渲染引擎的浏览器包括:IE、傲游、世界之窗浏览器、Avant、腾讯TT、Netscape 8、NetCaptor、Sleipnir、GOSURF、GreenBrowser和KKman等。
2、Gecko内核代表作品Mozilla ,FirefoxGecko是一套开放源代码的、以C++编写的网页排版引擎。Gecko是最流行的排版引擎之一,仅次于Trident。使用它的最著名浏览器有Firefox、Netscape6至9
3、WebKit内核代表作品Safari、Chromewebkit , 是一个开源项目,包含了来自KDE项目和苹果公司的一些组件,主要用于Mac OS系统,它的特点在于源码结构清晰、渲染速度极快。缺点是对网页代码的兼容性不高,导致一些编写不标准的网页无法正常显示。主要代表作品有Safari和Google的浏览器Chrome。
4、Presto内核代表作品OperaPresto, 是由Opera Software开发的浏览器排版引擎,供Opera 7.0及以上使用。它取代了旧版Opera 4至6版本使用的Elektra排版引擎,包括加入动态功能,例如网页或其部分可随着DOM及Script语法的事件而重新排版。