测试题

web前端测试题

一.填空题

1.网页的后缀名通常为:  .html和  .htm的页面

2.请写出在网页中设定表格边框的厚度的属性  border;设定表格单元格之间宽度属性cellspacing,;设定表格资料与单元格线的距离属性Cellpadding

3.预格式化文本标记<pre></pre>的功能是_标记内的内容按照原格式显示在网页中。

4.css中的选择器基本可以分为7种,分别是标签选择器,id选择器,类选择器,子代选择器,后代选择器,组选择器,伪类选择器

5.在页面中实现文字滚动的属性是_marquee

6.通过属性_ poster 可以设置在页面视频播放前的图片呈现

7.在页面中嵌入多媒体,如电影,声音等用到的属性标签是_embed

8.用来在视频窗口下附加MS-WINDOWS的AVI播放控制条的属性是_control

9.css新增的伪类有_属性选择器,和伪类选择器

10.每间隔三秒就刷新页面的代码:在<head><meta http-equiv="Refresh" content="5"> </head>

11.属性display的值有:none,inline,block,inline-block

12.表单对象的名称由_name属性设定;提交方法由_method属性指定;若要提交大数据量的数据,则应采用_post方法;表单提交后的数据处理程序由_action属性指定

二.简答题

1.HTML5中为什么要写<Doctype html>?

它是html5标准网页声明,全称为Document Type HyperText Mark-up Language,意思为文档种类为超文本标记性语言或超文本链接标示语言,支持html5标准的主流浏览器都认识这个声明。表示网页采用html5文档类型,<!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前,告诉浏览器文档使用哪种 HTML 或 XHTML 规范。

2.行内元素,块元素,空元素有哪些?

     行内元素:a、b、span、img、input、strong、select、label、em、button、textarea等

       块元素:div、ul、li、dl、dt、dd、p、h1-h6、table form等

      空元素:<br> <hr> <img> <input> <link> <meta> 

3.页面导入样式时,link和@import有什么区别?

  (1)link属于XHTML标签,除了加载css外,还能用于定义RSS定义rel连接属性等作用,而@import是css提供的,只能用于加载css

(2)页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载;
(3)import是CSS2.1 提出的,只在IE5以上才能被识别,而link是XHTML标签,无兼容问题;

4.介绍一下盒子模型

盒模型的组成包括:content(内容), padding(外边距), border(边框), margin(内边距)组成。

5.CSS中新增的伪类有哪些?

(1)属性选择器分为5种

E:[attr=value]

E:[attr]

E:[attr*=value]

E:[attr^=value]

E:[attr$=value]

(2)伪类选择器

E::first-child 选择第一个元素

E::last-child 选择最后一个元素

E::nth-child(n)选择第n个元素

E::nth-child(even)/E::nth-child(odd)选择偶数/奇数元素

E::nth-last-child(n)选择倒数第几个元素

E::target 结合锚点使用  ,用户点击时选择

E::selection  选中的区域

E::empty  选择没有内容的元素

E::after/before  在元素内容之后或之前添加内容(元素)

E::first-line  选择元素内容首行

E::first-letter  选择元素内容首字

6.margin-top塌陷是如何产生的,以及解决办法有哪些?

产生:一个元素中有一个子元素,给子元素设置margin_top时,会发现将其设置给了父元素,所以产生塌陷问题.

解决:(1)给父元素设置属性:overflow:hidden

(2)给父元素设置边框:border

(3)使用伪元素类

7.浮动元素不会撑开父元素的大小,那么如何解决父元素撑开的问题?

(1)设置overflow:hidden

(2)给父元素添加一个空的子元素,给子元素设置clear:both

(3)使用伪对象类after,before

8.前端开发由三部分构成,分别是什么以及作用是什么?

1、结构层(HTML)由HTML 或XHTML 之类的标记语言创建。

2、表现层(CSS)用于美化CSS层,可以很好地将结构层和表现层分离出来

3、行为层(JS):提供用户和界面的交互方式

9,你对css的权重如何理解?

权重也就是优先级

优先级的顺序如下:
important > 内联(style) > ID > 类(class) > 标签(li...) | 伪类(:hover,:focus...) | 属性选择[attr=''] > 伪对象(:before,:after) > 通配符(*) > 继承(inherit)

10.表单提交时,get和post提交方式的区别是什么?

(1)get提交的数据量小,有限制,会将表单信息数据显示在URL地址栏中,也不安全

(2)post提交的数据量大,不会显示表单数据,比较安全.

比较官方的话语:

区别::1.get是从服务器上获取数据,post是向服务器传送数据。
2.get是把参数数据

队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTPpost机制,将表单内各
个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3.对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
4.get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
5.get安全性非常低,post安全性较高。

三.编程题

1.实现3d立方体沿y轴360deg旋转.

效果图:

代码:

<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css">
			body {
				/*perspective: 300px;*/
			}
			.big{
				width: 200px;
				height: 200px;
				/*border: 1px dashed black;*/
				margin: 100px auto;
				transform: rotateY(20deg) rotateX(20deg);
				transform-style: preserve-3d;
				/*position: relative;*/
			}
			.wrap {
				width: 200px;
				height: 200px;
				/*border: 1px dashed black;*/
				margin: 100px auto;
				transform-style: preserve-3d;
				position: relative;
				border-radius: 50%;
				/*transform: rotateY(10deg) rotateX(10deg);*/
				animation: dong 5s linear infinite;
			}
			
			@keyframes dong {
				from {}
				to {
					transform: rotateY(360deg) /*rotateX(360deg)*/;
				}
			}
			
			.wrap>div {
				position: absolute;
				top: 0;
				right: 0;
				width: 200px;
				height: 200px;
				opacity: 0.5;
			}
			
			.front {
				background: red;
				transform: translateZ(100px);
			}
			
			.back {
				background: pink;
				transform: translateZ(-100px);
			}
			
			.left {
				background: green;
				transform: translateX(-100px) rotateY(-90deg);
			}
			
			.right {
				background: blue;
				transform: translateX(100px) rotateY(90deg);
			}
			
			.up {
				background: black;
				transform: translateY(-100px) rotateX(90deg);
			}
			
			.down {
				background: yellow;
				transform: translateY(100px) rotateX(-90deg);
			}
		</style>
	</head>

	<body>
		<div class="big">
			<div class="wrap">
				<div class="front"></div>
				<div class="back"></div>
				<div class="left"></div>
				<div class="right"></div>
				<div class="up"></div>
				<div class="down"></div>
			</div>
		</div>
	</body>

</html>

2.使用css3 中新增的伪类after和before实现八卦图并360deg无限旋转.

效果图:

代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			.wrap{
				width: 300px;
				height: 300px;
				/*border: 1px solid black;*/
				margin: 100px auto;
			}
			
			.tu{
				width: 200px;
				height: 0px;
				border-top-width: 100px;
				border-bottom-width: 100px;
				border-style: solid;
				border-top-color: red;
				border-bottom-color: green;
				border-radius: 100px;
				position: relative;
				animation: tu 2s linear infinite;
			}
			@keyframes tu{
				from{}
				to{transform: rotate(360deg);}
			}
			.tu::before,.tu::after{
				content: '';
				width: 20px;height: 20px;
				border-radius: 100%;
				position: absolute;
				top: -51px;
				border-width: 41px;
				border-style: solid;
				border-color: green;
			}
			.tu::before{
				border-color: green;
				background: red;
				left: 0;
			}
			.tu::after{
				border-color: red;
				background: green;
				left: 100px;
				right: 0;
			}
			
		</style>
	</head>
	<body>
		<div class="wrap">
			<div class="tu"></div>
		</div>
	</body>
</html>

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值