html+css面试题

来源:互联网 发布:淘宝销售数据统计 编辑:程序博客网 时间:2024/06/11 14:12

HTML+CSS

1.对WEB标准以及W3C的理解与认识

标签闭合、标签小写、不乱嵌套、提高搜索机器人搜索几率、使用外 css和js脚本、结构行为表现的分离、文件下载与页面速度更快、内容能被更多的用户所访问、内容能被更广泛的设备所访问、更少的代码和组件,容易维 护、改版方便,不需要变动页面内容、提供打印版本而不需要复制内容、提高网站易用性;

2.xhtml和html有什么区别

HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言

最主要的不同:

XHTML 元素必须被正确地嵌套。

XHTML 元素必须被关闭。

标签名必须用小写字母。

XHTML 文档必须拥有根元素。

3.Doctype? 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义?

用于声明文档使用那种规范(html/Xhtml)一般为 严格 过度 基于框架的html文档

加入XMl声明可触发,解析方式更改为IE5.5 拥有IE5.5的bug

4.行内元素有哪些?块级元素有哪些?CSS的盒模型?

块级元素:div p h1 h2 h3 h4 form ul

行内元素: a b br i span input select

Css盒模型:内容,border ,margin,padding

5.CSS引入的方式有哪些? link和@import的区别是?

内联 内嵌 外链 导入

区别 :同时加载

前者无兼容性,后者CSS2.1以下浏览器不支持

Link 支持使用javascript改变样式,后者不可

6.常用的CSS三种样式可举例说明?

  行内样式

   <div style=”color:#aafff”></div>

内部样式

<style type=”text/css”>

     div{

      color:#aaffff;

}

外部样式

<link rel=”stylesheet” type=”text/css” href=”index.css”/>

   

</style>

7.前端页面有哪三层构成,分别是什么?作用是什么?

结构层 Html 表示层 CSS 行为层 js

8.css的基本语句构成是?

选择器{属性1:值1;属性2:值2;……}

9.你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?

Ie(Ie内核) 火狐(Gecko) 谷歌(webkit) opear(Presto)

10.写出几种IE6 BUG的解决方法

1.双边距BUG float引起的 使用display

2.3像素问题 使用float引起的 使用dislpay:inline -3px

3.超链接hover 点击后失效 使用正确的书写顺序 link visited hover active

4.Ie z-index问题 给父级添加position:relative

5.Png 透明 使用js代码 改

6.Min-height 最小高度 !Important 解决’

7.select 在ie6下遮盖 使用iframe嵌套

8.为什么没有办法定义1px左右的宽度容器(IE6默认的行高造成的,使用over:hidden,zoom:0.08 line-height:1px)

11.<img>标签上title与alt属性的区别是什么?

Alt 当图片不显示是 用文字代表。

Title 为该属性提供信息

12.描述css reset的作用和用途。

Reset重置浏览器的css默认属性 浏览器的品种不同,样式不同,然后重置,让他们统一

13.解释css sprites,如何使用。

Css 精灵 把一堆小的图片整合到一张大的图片上,减轻服务器对图片的请求数量

14.浏览器标准模式和怪异模式之间的区别是什么?

盒子模型 渲染模式的不同

使用 window.top.document.compatMode 可显示为什么模式

15.你如何对网站的文件和资源进行优化?期待的解决方案包括:

文件合并

文件最小化/文件压缩

使用CDN托管

缓存的使用

16.什么是语义化的HTML?

直观的认识标签 对于搜索引擎的抓取有好处

17.清除浮动的几种方式,各自的优缺点

1.使用空标签清除浮动 clear:both(理论上能清楚任何标签,,,增加无意义的标签)

2.使用overflow:auto(空标签元素清除浮动而不得不增加无意代码的弊端,,使用zoom:1用于兼容IE)

3.是用afert伪元素清除浮动(用于非IE浏览器)

18、简述一下src与href的区别。

答案:

src用于替换当前元素,href用于在当前文档和引用资源之间确立联系。

src是source的缩写,指向外部资源的位置,指向的内容将会嵌入到文档中当前标签所在位置;在请求src资源时会将其指向的资源下载并应用到文档内,例如js脚本,img图片和frame等元素。

<script src ="js.js"></script>

当浏览器解析到该元素时,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,图片和框架等元素也如此,类似于将所指向资源嵌入当前标签内。这也是为什么将js脚本放在底部而不是头部。

 

href是Hypertext Reference的缩写,指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的链接,如果我们在文档中添加

<link href="common.css" rel="stylesheet"/>

那么浏览器会识别该文档为css文件,就会并行下载资源并且不会停止对当前文档的处理。这也是为什么建议使用link方式来加载css,而不是使用@import方式。

19、介绍一下CSS的盒子模型?

有两种, IE 盒子模型、标准 W3C 盒子模型;IE的content部分包含了 border 和 pading;

盒模型: 内容(content)、填充(padding)、边界(margin)、 边框(border).

20.CSS 选择符有哪些?哪些属性可以继承?优先级算法如何计算? CSS3新增伪类有那些?

 

id选择器( # myid)

类选择器(.myclassname)

标签选择器(div, h1, p)

相邻选择器(h1 + p)

子选择器(ul > li)

后代选择器(li a)

通配符选择器( * )

属性选择器(a[rel = “external”])

伪类选择器(a: hover, li: nth – child)

可继承的样式: font-size font-family color, UL LI DL DD DT;

不可继承的样式:border padding margin width height ;

优先级就近原则,同权重情况下样式定义最近者为准;

优先级为:

JavaScript

 

!important >  id > class > tag

important 比 内联优先级高

1

2

!important >  id > class > tag

important 比 内联优先级高

20、CSS3有哪些新特性?

CSS3实现圆角(border-radius:8px),阴影(box-shadow:10px),

对文字加特效(text-shadow、),线性渐变(gradient),旋转(transform)

transform:rotate(9deg) scale(0.85,0.90) translate(0px,-30px) skew(-9deg,0deg);//旋转,缩放,定位,倾斜

增加了更多的CSS选择器 多背景 rgba

21. 如何居中div,如何居中一个浮动元素?

 

div设置一个宽度,然后添加margin:0 auto属性

 

    div{

        width:200px;

        margin:0 auto;

     }  

居中一个浮动元素

 

      确定容器的宽高 500 高 300 的层

      设置层的外边距

 

     .div {

      Width:500px ; height:300px;//高度可以不设

      Margin: -150px 0 0 -250px;

      position:relative;相对定位

      background-color:pink;//方便看效果

      left:50%;

      top:50%;

}

22. 你怎么来实现页面设计图,你认为前端应该如何高质量完成工作? 一个满屏 品 字布局 如何设计?

 

* 首先划分成头部、body、脚部;。。。。。

 

*  

  实现效果图是最基本的工作,精确到2px;

 

  与设计师,产品经理的沟通和项目的参与

 

  做好的页面结构,页面重构和用户体验

 

  处理hack,兼容、写出优美的代码格式

 

  针对服务器的优化、拥抱 HTML5。

23. 列出display的值,说明他们的作用。position的值, relative和absolute定位原点是?

 

  1.    block 象块类型元素一样显示。

  none 缺省值。向行内元素类型一样显示。

  inline-block 象行内元素一样显示,但其内容象块类型元素一样显示。

  list-item 象块类型元素一样显示,并添加样式列表标记。

 

  2.

  *absolute

        生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。

 

  *fixed (老IE不支持)

        生成绝对定位的元素,相对于浏览器窗口进行定位。

 

  *relative

        生成相对定位的元素,相对于其正常位置进行定位。

 

  * static  默认值。没有定位,元素出现在正常的流中

  *(忽略 top, bottom, left, right z-index 声明)。

 

  * inherit 规定从父元素继承 position 属性的值。

24. 为什么要初始化CSS样式。

 

因为浏览器的兼容问题,不同浏览器对有些标签的默认值是不同的,如果没对CSS初始化往往会出现浏览器之间的页面显示差异。

 

当然,初始化样式会对SEO有一定的影响,但鱼和熊掌不可兼得,但力求影响最小的情况下初始化。

 

*最简单的初始化方法就是: * {padding: 0; margin: 0;}(不建议)

 

    淘宝的样式初始化:

    body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin:0; padding:0; }

    body, button, input, select, textarea { font:12px/1.5tahoma, arial, \5b8b\4f53; }

    h1, h2, h3, h4, h5, h6{ font-size:100%; }

    address, cite, dfn, em, var { font-style:normal; }

    code, kbd, pre, samp { font-family:couriernew, courier, monospace; }

    small{ font-size:12px; }

    ul, ol { list-style:none; }

    a { text-decoration:none; }

    a:hover { text-decoration:underline; }

    sup { vertical-align:text-top; }

    sub{ vertical-align:text-bottom; }

    legend { color:#000; }

    fieldset, img { border:0; }

    button, input, select, textarea { font-size:100%; }

    table { border-collapse:collapse; border-spacing:0; }

原创粉丝点击