2012腾讯实习生招聘web前端面试题
一、 填空题(每空4分,共24分)
1. 为div设置类a与b,应编写HTML代码 _<div class=”a b”>_</div>_________。
2. 设置CSS属性clear的值为 _both___________时可清除左右两边浮动。
3. ____li________标签必须直接嵌套于ul、ol中。
ul 显示小黑点, ol 显示 数字。
4. CSS属性 _____margin_______可为元素设置外补丁。
5. 设置CSS属性float的值为 ___none_________时可取消元素的浮动。
none为float默认属性值。
6. 文字居中的CSS代码是 ____text-align:center________。
<body>居中还需要加上 margin:auto;
二、 选择题(每题4分,共16分)
1. 下列哪个样式定义后,内联(非块状)元素可以定义宽度和高度( C )
A. display:inline B. display:none C. display:block D. display:inheric
block元素的特点是:
总是在新行上开始;
高度,行高以及顶和底边距都可控制;
宽度缺省是它的容器的100%,除非设定一个宽度
<div>, <p>, <h1>, <form>, <ul> 和 <li>是块元素的例子。inline元素的特点是:
和其他元素都在一行上;
高,行高及顶和底边距不可改变;
宽度就是它的文字或图片的宽度,不可改变。
2. 选出你认为最合理的定义标题的方法( C )
A. <span class=”heading”>文章标题</span>
B. <p><b>文章标题</b></p>
C. <h1>文章标题</h1>
D. <strong>文章标题</strong>
3. br标签在XHTML中语义为( A )
A.换行 B.强调 C.段落 D.标题
4. 不换行必须设置( AC )
A.word-break B.letter-spacing C.white-space D.word-spacing
5. 在使用table表现数据时,有时候表现出来的会比自己实际设置的宽度要宽,为此需要设置下面哪些属性值( AD )
A. cellpadding=”0″ B. padding:0 C. margin:0 D. cellspacing=”0″
三、判断题 (每题4分,共24分)
1. CSS属性font-style 用于设置字体的粗细。 ( × )
2. CSS属性overflow用于设置元素超过宽度时是否隐藏或显示滚动条。 ( √ )
3. 在不涉及样式情况下,页面元素的优先显示与结构摆放顺序无关。 ( × )
4. 在不涉及样式情况下,页面元素的优先显示与标签选用无关。 ( √ )
5. display:inline兼容所有的浏览器。 ( √ )
6. input属于窗体元素,层级显示比flash、其它元素都高。 ( × )
四、代码题 (每题9分,共36分)
1. 写出ul、ol、dl三种列表的html结构。
<ul> <li></li> </ul> <ol> <li></li> </ol> <dl> <dt></dt> <dd></dd> </dl>
2. 将以下CSS代码进行缩写,注意要符合缩写的规范。
a) 代码一:
border-width:1px;
border-color:#000;
border-style:solid;
代码一:border:1px #000 solid;
b) 代码二:
background-position:0 0;
background-repeat:no-repeat;
background-attachment:fixed;
background-color:#f00;
background-image:url(background.gif);
代码二:background: #f00 url(background.gif) no-repeat fixed 0 0;
c)代码三:
font-style:italic;
font-family:"Lucida Grande",sans-serif;
font-size:1em;
font-weight:bold;
font-variant:small-caps;
line-height:140%;
代码三:font:italic bold small-caps 1em/140% "lucida Grande",sans-serif;
d) 代码四:
list-style-position:inside;
list-style-type:square;
list-style-image:url(image.gif);
代码四:list-style: url(image.gif) square inside;
e)代码五:
margin-left:20px;
margin-right:20px;
margin-bottom:5px;
margin-top:20px;
代码五:margin:20px 20px 5px 20px;
例子 1
margin:10px 5px 15px 20px;
- 上外边距是 10px
- 右外边距是 5px
- 下外边距是 15px
- 左外边距是 20px
例子 2
margin:10px 5px 15px;
- 上外边距是 10px
- 右外边距和左外边距是 5px
- 下外边距是 15px
例子 3
margin:10px 5px;
- 上外边距和下外边距是 10px
- 右外边距和左外边距是 5px
f)代码六
color:#336699;
color:#ffcc00;
代码六:color:#369;color:#fc0;
3. 修改以下代码,使其结构更加合理以及符合W3C标准。(XHTML 1.0 Strict)
代码:
<div> <h2>Don’t buy these electronics used</h2> Money may be tight, but you may kick yourself for purchasing these electronics secondhand. Even when the price is low, the risk may be too high. <p> <img src='”album.jpg”'> </p> <p> <a href='”home.html”' target='”_blank”'>home</a><a href='”content.html”' target='”_blank”'>content</a> </p> </div>
答:
<div> <h2>Don’t buy these electronics used</h2> <p> Money may be tight, but you may kick yourself for purchasing these electronics secondhand. </p> <p> Even when the price is low, the risk may be too high. </p> <img src="album.jpg" alt="album" /> <ul> <li><a href="home.html" rel="external" title="home">home</a></li> <li><a href="content.html" rel="external" title="content">content</a></li> </ul> </div>
4. 简述border:none以及border:0的区别,并给出使用建议。
答:border:none表示边框样式无,border:0表示边框宽度为0;当定义了border:none,即隐藏了边框的显示,实际就是边框宽度为0.
当定义边框时,必须定义边框的显示样式.因为边框默认样式为不显示none,所以仅设置边框宽度,由于样式不存在,边框的宽度也自动被设置为0.
五、勇气拼一拼,让你超越别人的加分题目来了! (不限于一种方法,共30分)
使用重构的方式制作出一个如下图的水平、垂直都居中短边为50px,长边为150px的红色十字架。
十字架
要求:
1.使用2个div完成
2.使用3个div完成
3.使用5个div完成
答案:
1.使用2个div完成
<!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>2个DIV</title> <style type="text/css"> #heng,#shu{left:50%;top:50%;position:absolute; background-color:#f00;} #shu{width:50px;height:150px;margin-left:-25px;margin-top:-75px;} #heng{width:150px;height:50px;margin-left:-75px;margin-top:-25px;background-color:#f00;} </style> </head> <body> <div id="heng"></div> <div id="shu"></div> </body> </html>
2.使用3个div完成
<!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" /> <style type="text/css"> .main{width:150px; height:150px; top:50%; left:50%; position:absolute; margin:-75px 0 0 -75px; border:2px #F00 solid;} .heng{width:150px; height:50px; background:#F00; margin-top:50px;} .shu{width:50px; height:150px; background:#F00; margin-left:50px; margin-top:-100px;/*margin上边界叠加*/} </style> <title>3个DIV</title> </head> <body> <div class="main"> <div class="heng"></div> <div class="shu"></div> </div> </body> </html>
3.使用5个div完成
<!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>5个DIV(www.hemin.cn)</title> <style type="text/css"> #top,#middle,#left,#right,#bottom{height:50px;width:50px;position:absolute;top:50%;left:50%;} #top{margin:-75px 0 0 -25px;background:#F00;} #middle{margin:-25px 0 0 -25px;background:#000;} #left{margin:-25px 0 0 -75px;background:#00F;} #right{margin:-25px 0 0 25px;background:#0F0;} #bottom{margin:25px 0 0 -25px;background:#FF0;} </style> </head> <body> <div id="top"></div> <div id="middle"></div> <div id="left"></div> <div id="right"></div> <div id="bottom"></div> </body> </html>