设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 技术文摘 查看内容

40个重要的HTML5面试题及答案

2014-10-20 10:25| 发布者: joejoe0332| 查看: 45150| 评论: 0|原作者: 某小浩|来自: jobbole.com

摘要: 我是一个ASP.NET MVC的开发者,最近在我找工作的时候被问到很多与HTML5相关的问题和新特性。所以以下40个重要的问题将帮助你复习HTML5相关的知识。这些问题不是你得到工作的高效解决方案,但是可以在你想快速复习相 ...


什么是SVG(Scalable Vector Graphics可缩放矢量图形)?

SVG(Scalable Vector Graphics可缩放矢量图形)表示可缩放矢量图形。他是基于文本的图形语言,使用文本,线条,点等来进行图像绘制,这使得他轻便,显示更加迅速

我们能看到使用HTML5的SVG的简单例子么?

比方说,我们希望使用HTML5 SVG去显示以下简单的线条

下面是HTML5代码

1
2
3
<svg id="svgelem" height="[object SVGAnimatedLength]" xmlns="http://www.w3.org/2000/svg">
<line style="stroke: rgb(255, 0, 0); stroke-width: 2px;" y2="[object SVGAnimatedLength]" x2="[object SVGAnimatedLength]" y1="[object SVGAnimatedLength]" x1="[object SVGAnimatedLength]">
line>

HTML5中canvas是什么?

Canvas是HTML中你可以绘制图形的区域

我们如何使用Canvas来画一条简单的线?

  • 定义Canvas区域
  • 获取访问canvas上下文区域
  • 绘制图形

定义Canvas区域

定义Canvas区域你需要使用下面的HTML代码,这定义了你能进行绘图的区域

1
<canvas id="mycanvas" width="600" height="500" style="border:1px solid #000000;">canvas>

获取画布区域的访问

在画布上进行绘图我们首先需要获取上下文区域的关联,下面是获取画布区域的代码。

1
2
var c=document.getElementById("mycanvas");
var ctx=c.getContext("2d");

绘制图形

现在一旦你获取了访问上下文,我们就可以开始在上下文中绘制了。首先调用“move”方法并从一个点开始,使用线条方法绘制线条然后使用stroke方法结束。

1
2
3
ctx.moveTo(10,10);
ctx.lineTo(200,100);
ctx.stroke();

以下是完整的代码

1
2
3
4
5
6
7
8
9
10
11
12
<body  onload="DrawMe();">
<canvas id="mycanvas" width="600" height="500" style="border:1px solid #000000;">canvas>
body>
<script>
function DrawMe()
{
var c=document.getElementById("mycanvas");
var ctx=c.getContext("2d");
ctx.moveTo(10,10);
ctx.lineTo(200,100);
ctx.stroke();
}

你可以得到以下输出

 

Canvas和SVG图形的区别是什么?

Note:-如果你看了之前的两个的问题,Canvas和SVG都可以在浏览器上绘制图形。因此在这个问题中,面试官想知道你在什么时候选用哪种方式。

SVGCanvas
这个就好像绘制和记忆,换句话说任何使用SVG绘制的形状都能被记忆和操作,浏览器可以再次显示Canvas就像绘制和忘记,一旦绘制完成你不能访问像素和操作它
SVG对于创建图形例如CAD软件是良好的,一旦东西绘制,用户就想去操作它Canvas在绘制和忘却的场景例如动画和游戏是良好的
因为为了之后的操作,需要记录坐标,所以比较缓慢因为没有记住以后事情的意向,所以更快
我们可以用绘制对象的相关事件处理我们不能使用绘制对象的相关事件处理,因为我们没有他们的参考
分辨率无关分辨率相关

如何使用Canvas和HTML5中的SVG去画一个矩形?
HTML5使用SVG绘制矩形的代码

1
2
3
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<rect style="fill: rgb(0, 0, 255); stroke-width: 1px; stroke: rgb(0, 0, 0);" height="[object SVGAnimatedLength]" width="[object SVGAnimatedLength]">
rect>

HTML5使用Canvas绘制矩形的代码

1
2
3
4
var c=document.getElementById("mycanvas");
var ctx=c.getContext("2d");
ctx.rect(20,20,150,100);
ctx.stroke();

CSS(cascading style sheets级联样式表)中的选择器是什么?
选择器在你想应用一个样式的时候,帮助你去选择元素。举例,下面是简单的被命名为”instro”的样式,他适用于HTML元素显示红色背景

1
2
3
4
5
<style>
.intro{
background-color:red;
}
style>

应用上面的”intro”样式给div,我们可以使用”class”选择器,如下图所示

1
2
3
4
<div class="intro">
<p>My name is Shivprasad koirala.p>
<p>I write interview questions.p>
div>

如何使用ID值来应用一个CSS样式?
假设,你有一个HTML段落标签,使用id是”mytext”,就和下面的片段中显示的那样

1
<p id="mytext">This is HTML interview questions.p>

你可以使用#选择器和id的名字创建一种样式,并把CSS值应用到段落标签中,因此应用样式到mytext元素,我们可以使用#mytext,如下所示

1
2
3
4
5
6
<style>
#mytext
{
background-color:yellow;
}
style>

迅速修订一些重要的选择器

设置所有段落标签背景色为黄色

1
2
3
4
div p
{
background-color:yellow;
}

设置所有div内部的段落标签为黄色背景

1
2
3
4
div p
{
background-color:yellow;
}

设置所有div之后的段落标签为黄色背景

1
2
3
4
div+p
{
background-color:yellow;
}

设置所有含有“target”属性的变为黄色背景

1
2
3
4
5
6
7
a[target]
{
background-color:yellow;
}
<a href="http://www.questpond.com">ASP.NET interview questionsa>
<a href="http://www.questpond.com" target="_blank">c# interview questionsa>
<a href="http://www.questpond.org" target="_top">.NET interview questions with answersa>

当控制得到焦点的时候设置所有的元素为黄色背景

1
2
3
4
input:focus
{
background-color:yellow;
}

根据相关连接操作设置超链接样式

1
2
3
4
a:link    {color:green;}
a:visited {color:green;}
a:hover   {color:red;}
a:active  {color:yellow;}



酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部