精华内容
下载资源
问答
  • 1、去掉或样式丢失的时候能让页面呈现清晰的结构。 2.屏幕阅读器(假设訪客有视障)会全然依据你的标记来“读”你的网页; 3.PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(一般是由于这些设备对 ...

    你怎样理解HTML结构的语意化?

    1、去掉或样式丢失的时候能让页面呈现清晰的结构。
    2.屏幕阅读器(假设訪客有视障)会全然依据你的标记来“读”你的网页;
    3.PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(一般是由于这些设备对
    CSS的支持较弱)。
    4.搜索引擎的爬虫也依赖于标记来确定上下文和各个keyword的权重。
    5.你的页面是否对爬虫easy理解非常重要,由于爬虫非常大程度上会忽略用于表现的标记。而仅仅注重语义标记;
    6、便于团队开发和维护。


    Doctype文档声明的严格模式和混杂模式,怎样触发这两种模式,区分它们有何意义?


    1、怎样触发两种模式:
    增加xml头部声明,能够触发IE浏览器的Quirks mode,触发之后,浏览器解析方式就和IE5.5一样,拥有IE5.5一样的bug和其它问题。行为(Javascript)也是如此。

          
    2、IE6的触发:在XHTML的DOCTYPE前增加XML声明,
    <?xml version="1.0" encoding="utf-8"?

    >
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    3、IE7的触发:在XML声明和XHTML的DOCTYPE之间,增加HTML凝视
    <?

    xml version="1.0" encoding="utf-8"?

    >
    <!-- ... and keep IE7 in quirks mode -->
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    4、IE6和IE7都能够触发的:在HTML4.01的DOCTYPE文档头部,增加HTML凝视
    <!-- quirks mode -->  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    5、在页面顶部加 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">,将触发“怪异模式”
    6、没有使用DTD声明或者使用HTML4下面(不包含HTML4)的DTD声明时。基本上全部的浏览器都是使用quirks mode呈现


    谈谈曾经端角度出发做好SEO须要考虑什么?
    1、了解搜索引擎怎样抓取网页和怎样索引网页;
    2、Meta标签优化。
    3、怎样选取关键词并在网页中放置关键词;
    4、了解基本的搜索引擎;
    5、基本的互联网文件夹
    6、按点击付费的搜索引擎;
    7、搜索引擎登录;
    8、链接交换和链接广泛度(Link Popularity);
    9、标签的合理使用。


    我们知道能够以外链的方式引入CSS文件,请谈谈外链引入CSS有哪些方式,这些方式的性能有差别吗?
    CSS的引入方式最经常使用的有三种:
    第一:在head部分增加<link rel="stylesheet" type="text/css" href="my.css"/>,引入外部的CSS文件。
    第二:在head部分增加
    <style type="text/css">
    div{margin: 0;padding: 0;border:1px red solid;}
    </style>
    第三:直接在页面的标签里加<div style="border:1px red solid;">


    CSS Sprite是什么,谈谈这个技术的优缺点。
    CSS sprites在国内非常多人叫css精灵。是一种网页图片应用处理方式。它同意你将一个页面涉及到的全部零星图片都包括到
    中去。降低对server的请求次数,提高訪问速度。
    1、长处:
    (1)利用CSS Sprites能非常好地降低了网页的http请求,从而大大的提高了页面的性能,这也是CSS Sprite的长处,也是其被广泛传播和应用的主要原因。
    (2)攻克了网页设计师在图片命名上的困扰。仅仅需对一张集合的图片上命名就能够了,不须要对每个小元素命名,从而提高了网页的制作效率。
    (3)换风格方便。仅仅须要在一张或少张图片上改动图片的颜色或样式,整个网页的风格就能够改变。维护起来也非常方便。
    2、缺点:
    (1)在图片合并的时候,你要把多张图片有序的合理的合并成一张图片,还要留好足够的空间,防止板块内显示不必要的背景;这些还好,最痛苦的是在宽屏,高分辨率的屏幕下的自适应页面,你的图片假设不够宽,非常easy将背景断裂;
    (2)CSS Sprites在开发的时候比較麻烦,你要通过photoshop或其它工具測量计算每个背景单元的精确位是针线活,没什么难度。可是非常繁琐。
    (3)CSS Sprites在维护的时候比較麻烦,假设页面背景有少许修改,一般就要改这张合并的图片。无需改的好不要动,这样避免修改很多其它的css,假设在原来的地方放不下,又仅仅能(最好)往下加图片。这样图片的字加了,还要修改css。


    以CSS3标准定义一个webkit内核浏览器识别的圆角(尺寸任意)
    -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius:10px;


    行内元素有哪些?块级元素有哪些?CSS的盒模型?
    行内元素有:a b span I em img input select strong
    级元素有:div ul ol li dl dt dd h1 h2 h3 h4 p
    盒模型:margin border padding width


    前端页面有哪三层构成,各自是什么?作用是什么?
    网页分成三个层次,即:结构层、表示层、行为层。
    1、网页的结构层(structurallayer)由HTML 或XHTML 之类的标记语言负责创建。标签。也就是那些出如今尖括号中的单词,对网页内容的语义含义做出这些标签不包括不论什么关于怎样显示有关内容的信息。比如,P标签表达了这样一种语义:“这是一个文本段。”
    2、网页的表示层(presentationlayer)由CSS 负责创建。CSS对“怎样显示有关内容”的问题做出了回答。
    3、网页的行为层(behaviorlayer)负责回答“内容应该怎样对事件做出反应”这一问题。

    这是Javascript 语言和DOM 主宰的领域。


    html中form里action方法的get和post有什么差别

    1、Get是用来从server上获得数据,而Post是用来向server上传递数据。


    2、Get将表单中数据的依照variable=value的形式,加入到action所指向的URL后面。而且两者使用“?”连接。而各个变量之间使用“&”连接。Post是将表单中的数据放在form的数据体中。依照变量和值相相应的方式,传递到action所指向URL。
    3、Get是不安全的,由于在传输过程,数据被放在请求的URL中,而现在现有的非常多server、代理server或者用户代理都会将请求URL记录到日志文件里。然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。

    另外,用户也能够在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。

    Post的全部操作对用户来说都是不可见的。
    4、Get传输的数据量小,这主要是由于受URL长度限制;而Post能够传输大量的数据,所以在上传文件仅仅能使用Post(当然另一个原因。将在后面的提到)。
    5、Get限制Form表单的数据集的值必须为ASCII字符。而Post支持整个ISO10646字符集。
    6、Get是Form的默认方法。


    html元素的id跟class什么差别
    id和class是网页中两个通用属性。他们协同工作使整个页面丰富多彩。当我们为一个元素定义样式时,二者都可用,但有差别
    1、在css样式表中书写时。id选择符前缀应加“#”。class选择符前缀应加“.”
    2、id属性在一个页面中书写时仅仅能使用一次。而class能够重复使用
    3、id作为元素标签用于区分不同结构和内容,而class作为一个样式,能够应用到不论什么结构和内容其中去
    4、布局上的一般原则:id先确定结构和内容再为它定义样式。而class正好相反,是先定义样式,然后在页面中依据不同需求把样式应用到不同结构和内容上
    5、眼下浏览器都同意同一个页面出现多个同样属性值的id。普通情况能正常显示,只是当javascript通过id来控制元素时就会出错
    6、在实际应用中,class常被用到文字版块和页面修饰上,而id多被用在雄伟布局和设计包括块,或包括框的样式。


    Ajax是什么?
    Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。Ajax包含:
    1、XHTML和CSS
    2、使用文档对象模型(Document Object Model)作动态显示和交互
    3、使用XML和XSLT做数据交互和操作
    4、使用XMLHttpRequest进行异步数据接收
    5、使用JavaScript将它们绑定在一起 


    你做的页面在哪些流览器測试过?这些浏览器的内核各自是什么?常常遇到的浏览器的兼容性有哪些?怎么会出现?解决方法是什么?
    1、DOCTYPE 影响 CSS 处理
    2、FF: 设置 padding 后, div 会添加 height 和 width, 但 IE 不会, 故须要用 !important 多设一个 height 和 width
    3、FF: 支持 !important, IE 则忽略, 可用 !important 为 FF 特别设置样式
    4、div 的垂直居中问题: vertical-align:middle; 将行距添加到和整个DIV一样高 line-height:200px; 然后插入文字。就垂直居中了。缺点是要控制内容不要换行
    5、在mozilla firefox和IE中的BOX模型解释不一致导致相差2px       解决方法:  div{margin:30px!important;margin:28px;}  注意这两个margin的顺序一定不能写反。!important这个属性IE不能识别。但别的浏览器能够识别。



    [html5]离线存储
    H5的一个重要特性就是离线存储,所谓的离线存储就是将一些资源文件保存在本地。这样兴许的页面又一次载入将使用本地资源文件,在离线情况下能够继续訪问web应用,同一时候通过一定的手法(更新相关文件或者使用相关API),能够更新、删除离线存储等操作。

    H5的离线存储使用一个manifest文件来标明哪些文件是须要被存储的,使用如 <html manifest='offline.manifest'> 来引入一个manifest文件,这个文件的路径能够是相对的。也能够是绝对的,假设你的web应用非常多,并且希望能集中管理manifest文件,那么静态文件server是个不错的选择。


    iframe的优缺点
    1、缺点:
      在网页中使用框架结构最大的弊病是搜索引擎的“蜘蛛”程序无法解读这样的页面。

    当“蜘蛛”程序遇到由数个框架组成的网页时。它们仅仅看到框架而无法找到链 接。因此它们会以为该站点是个死站点,并且非常快转身离去。对一个站点来说这无异于一场灾难。

    假设你想销售产品。你须要客户;如想得到客户,你首先要让人们 訪问你的站点,而要做到这一点。你就非求助于搜索引擎不可。你花费了大量的时间、精力和金钱开设了一家网上商店,却又有益不让搜索引擎检索你,这就好象开 家零售商店,却将窗户所有漆成黑色。并且还不挂不论什么招牌一样。
    2、长处:
      从上文中我们能够发现,使用ifame框架的弊端是无法被搜索引擎所爬行抓取。但凡事总是具有两面性。

    它的这个缺点也可能是他的长处。

    利用这一点那我 们就能够把我们网站上一些须要给我们的用户查看。可是不须要搜索引擎爬行的内容用ifame框架进行显示。这样就能够让ifram发挥真正的效果了,并且 有我们网站中的代码也能够得到非常大的精简。举一个样例,就如笔者上文提到的加入微博直播信息,这些微博信息我们并不须要提供给搜索引擎。而我们须要提供的 是与訪客的一个互动的体验,例如以下图所看到的,而假设我们使用ifame框架嵌入微博的信息,不仅能够简便的加入网站的微博直播平台。同一时候我们看到代码也十分的 精简。


      iframe好在可以把原先的网页所有原封不动显示下来,可是假设用在首页,是搜索引擎最套讨厌的.那么你的站点即使做的在好,也排不到好的名次!如 果是动态网页。用include还好点!可是必需要去除他 的<html><head><title><body>标签!


    总结:框架的长处
        重载页面时不须要重载整个页面,仅仅须要重载页面中的一个框架页(降低了数据的传输,添加了网页下载速度)
        方便制作导航栏
    框架的缺点
        会产生非常多页面,不easy管理
        不easy打印
        浏览器的后退button无效
        代码复杂,无法被一些搜索引擎索引到
        多数小型的移动设备(PDA 手机)无法全然显示框架
        多框架的页面会添加server的http请求
        因为上面诸多缺点,因此不符合标准网页设计的理念,已经被标准网页设计抛弃

    提示: 眼下框架的全部长处全然能够使用Ajax实现。因此已经没有必要使用框架了。


    CSS盒模型原理
    1、W3C 盒子模型的范围包括 margin、border、padding、content,而且 content 部分不包括其它部分。 
    2、IE 盒子模型的范围也包括 margin、border、padding、content,和标准 W3C 盒子模型不同的是:IE 盒子模型的 content 部分包括了 border 和 pading。


    CSS display:none和visibility:hidden的差别
    visibility:hidden隐藏,但在浏览时保留位置;CSS display:none视为不存在。且不载入!




    转载于:https://www.cnblogs.com/mfmdaoyou/p/6788810.html

    展开全文
  • 前端面试题

    2017-06-08 13:54:31
    1、去掉或样式丢失的时候能让页面呈现清晰的结构。 2、屏幕阅读器(如果访客有视障)会完全根据你的标记来"读"你的网页。 3、PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对CSS...

    你如何理解HTML结构的语意化?

    • 1、去掉或样式丢失的时候能让页面呈现清晰的结构。
    • 2、屏幕阅读器(如果访客有视障)会完全根据你的标记来"读"你的网页。
    • 3、PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对CSS的支持较弱)。
    • 4、搜索引擎的爬虫也依赖于标记来确定上下文和各个关键字的权重。
    • 5、你的页面是否对爬虫容易理解非常重要,因为爬虫很大程度上会忽略用于表现的标记,而只注重语义标记。
    • 6、便于团队开发和维护。

    Doctype文档声明的严格模式和混杂模式,如何触发这两种模式,区分它们有何意义? 

    1、如何触发两种模式

    加入xml头部声明,可以触发IE浏览器的Quirks mode,触发之后,浏览器解析方式就和IE5.5一样,拥有IE5.5一样的bug和其他问题,行为(Javascript)也是如此。

    2、IE6的触发:在XHTML的DOCTYPE前加入XML声明

    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    3、IE7的触发:在XML声明和XHTML的DOCTYPE之间,加入HTML注释

    <?xml version="1.0" encoding="utf-8"?>
    <!-- ... and keep IE7 in quirks mode -->
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    4、IE6和IE7都可以触发的:在HTML4.01的DOCTYPE文档头部,加入HTML注释

    <!-- quirks mode -->  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

    5、在页面顶部加 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> ,将触发"怪异模式"

    6、没有使用DTD声明或者使用HTML4以下(不包括HTML4)的DTD声明时,基本上所有的浏览器都是使用quirks mode呈现

    谈谈以前端角度出发做好SEO需要考虑什么?

    • 1、了解搜索引擎如何抓取网页和如何索引网页。
    • 2、Meta标签优化。
    • 3、如何选取关键词并在网页中放置关键词。
    • 4、了解主要的搜索引擎。
    • 5、主要的互联网目录
    • 6、按点击付费的搜索引擎。
    • 7、搜索引擎登录。
    • 8、链接交换和链接广泛度(Link Popularity)。
    • 9、标签的合理使用。

    我们知道可以以外链的方式引入CSS文件,请谈谈外链引入CSS有哪些方式,这些方式的性能有区别吗?

    CSS的引入方式最常用的有三种:

    • 第一:在head部分加入 <link rel="stylesheet" type="text/css" href="my.css"/>, 引入外部的CSS文件。
    • 第二:在head部分加入
      <style type="text/css"> 
      div{margin: 0;padding: 0;border:1px red solid;} 
      </style>
    • 第三:直接在页面的标签里加 <div style="border:1px red solid;">

    CSS Sprite是什么,谈谈这个技术的优缺点?

    CSS sprites在国内很多人叫css精灵,是一种网页图片应用处理方式。它允许你将一个页面涉及到的所有零星图片都包含到 中去,减少对服务器的请求次数,提高访问速度。

    1、优点:

    • (1)利用CSS Sprites能很好地减少了网页的http请求,从而大大的提高了页面的性能,这也是CSS Sprite的优点,也是其被广泛传播和应用的主要原因。
    • (2)解决了网页设计师在图片命名上的困扰,只需对一张集合的图片上命名就可以了,不需要对每一个小元素命名,从而提高了网页的制作效率。
    • (3)换风格方便,只需要在一张或少张图片上修改图片的颜色或样式,整个网页的风格就可以改变。维护起来也很方便。

    2、缺点:

    • (1)在图片合并的时候,你要把多张图片有序的合理的合并成一张图片,还要留好足够的空间,防止板块内显示不必要的背景。这些还好,最痛苦的是在宽屏,高分辨率的屏幕下的自适应页面,你的图片如果不够宽,很容易将背景断裂。
    • (2)CSS Sprites在开发的时候比较麻烦,你要通过photoshop或其他工具测量计算每一个背景单元的精确位是针线活,没什么难度,但是很繁琐。
    • (3)CSS Sprites在维护的时候比较麻烦,如果页面背景有少许改动,一般就要改这张合并的图片,无需改的好不要动,这样避免改动更多的css,如果在原来的地方放不下,又只能(最好)往下加图片,这样图片的字加了,还要改动css。

    以CSS3标准定义一个webkit内核浏览器识别的圆角(尺寸随意)

    -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius:10px;

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

    • 行内元素有:a b span I em img input select strong
    • 级元素有:div ul ol li dl dt dd h1 h2 h3 h4 p
    • 盒模型:margin border padding width

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

    网页分成三个层次,即:结构层、表示层、行为层。

    • 1、网页的结构层(structurallayer)由HTML 或XHTML 之类的标记语言负责创建。标签,也就是那些出现在尖括号里的单词,对网页内容的语义含义做出这些标签不包含任何关于如何显示有关内容的信息。例如,P标签表达了这样一种语义:"这是一个文本段。"
    • 2、网页的表示层(presentationlayer)由CSS 负责创建。CSS对"如何显示有关内容"的问题做出了回答。
    • 3、网页的行为层(behaviorlayer)负责回答"内容应该如何对事件做出反应"这一问题。这是Javascript 语言和DOM 主宰的领域。

    html中form里action方法的get和post有什么区别?

    • 1、Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据。
    • 2、Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用"?"连接,而各个变量之间使用"&"连接。Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。
    • 3、Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。Post的所有操作对用户来说都是不可见的。
    • 4、Get传输的数据量小,这主要是因为受URL长度限制。而Post可以传输大量的数据,所以在上传文件只能使用Post(当然还有一个原因,将在后面的提到)。
    • 5、Get限制Form表单的数据集的值必须为ASCII字符。而Post支持整个ISO10646字符集。
    • 6、Get是Form的默认方法。

    html元素的id跟class什么区别

    id和class是网页中两个通用属性,他们协同工作使整个页面丰富多彩,当我们为一个元素定义样式时,二者都可用,但有区别?

    • 1、在css样式表中书写时,id选择符前缀应加"#",class选择符前缀应加"."
    • 2、id属性在一个页面中书写时只能使用一次,而class可以反复使用
    • 3、id作为元素标签用于区分不同结构和内容,而class作为一个样式,可以应用到任何结构和内容当中去
    • 4、布局上的一般原则:id先确定结构和内容再为它定义样式。而class正好相反,是先定义样式,然后在页面中根据不同需求把样式应用到不同结构和内容上
    • 5、目前浏览器都允许同一个页面出现多个相同属性值的id,一般情况能正常显示,不过当javascript通过id来控制元素时就会出错
    • 6、在实际应用中,class常被用到文字版块和页面修饰上,而id多被用在宏伟布局和设计包含块,或包含框的样式。

    Ajax是什么?

    Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。Ajax包括:

    • 1、XHTML和CSS
    • 2、使用文档对象模型(Document Object Model)作动态显示和交互
    • 3、使用XML和XSLT做数据交互和操作
    • 4、使用XMLHttpRequest进行异步数据接收
    • 5、使用JavaScript将它们绑定在一起

    你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?经常遇到的浏览器的兼容性有哪些?怎么会出现?解决方法是什么?

    • 1、DOCTYPE 影响 CSS 处理
    • 2、FF: 设置 padding 后, div 会增加 height 和 width, 但 IE 不会, 故需要用 !important 多设一个 height 和 width
    • 3、FF: 支持 !important, IE 则忽略, 可用 !important 为 FF 特别设置样式
    • 4、div 的垂直居中问题: vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行
    • 5、在mozilla firefox和IE中的BOX模型解释不一致导致相差2px, 解决方法:  div{margin:30px!important;margin:28px;}  注意这两个margin的顺序一定不能写反,!important这个属性IE不能识别,但别的浏览器可以识别。

    html5 离线存储

    Html5的一个重要特性就是离线存储,所谓的离线存储就是将一些资源文件保存在本地,这样后续的页面重新加载将使用本地资源文件,在离线情况下可以继续访问web应用,同时通过一定的手法(更新相关文件或者使用相关API),可以更新、删除离线存储等操作。

    Html5的离线存储使用一个manifest文件来标明哪些文件是需要被存储的,使用如 <html manifest='offline.manifest'> 来引入一个manifest文件,这个文件的路径可以是相对的,也可以是绝对的,如果你的web应用很多,而且希望能集中管理manifest文件,那么静态文件服务器是个不错的选择。

    iframe的优缺点?

    1、缺点:

    在网页中使用框架结构最大的弊病是搜索引擎的"蜘蛛"程序无法解读这种页面。当"蜘蛛"程序遇到由数个框架组成的网页时,它们只看到框架而无法找到链 接,因此它们会以为该网站是个死站点,并且很快转身离去。对一个网站来说这无异于一场灾难。如果你想销售产品,你需要客户;如想得到客户,你首先要让人们 访问你的网站,而要做到这一点,你就非求助于搜索引擎不可。你花费了大量的时间、精力和金钱开设了一家网上商店,却又故意不让搜索引擎检索你,这就好象开 家零售商店,却将窗户全部漆成黑色,而且还不挂任何招牌一样。

    2、优点:

    从上文中我们可以发现,使用ifame框架的弊端是无法被搜索引擎所爬行抓取。但凡事总是具有两面性。它的这个缺点也可能是他的优点。利用这一点那我 们就可以把我们站点上一些需要给我们的用户查看,但是不需要搜索引擎爬行的内容用ifame框架进行显示,这样就可以让ifram发挥真正的效果了,而且 有我们站点中的代码也可以得到很大的精简,举一个例子,就如笔者上文提到的添加微博直播信息,这些微博信息我们并不需要提供给搜索引擎,而我们需要提供的 是与访客的一个互动的体验,如下图所示,而如果我们使用ifame框架嵌入微博的信息,不仅可以简便的添加站点的微博直播平台,同时我们看到代码也十分的 精简。

    iframe好在能够把原先的网页全部原封不动显示下来,但是如果用在首页,是搜索引擎最套讨厌的.那么你的网站即使做的在好,也排不到好的名次!如 果是动态网页,用include还好点!但是必须要去除他 的<html><head><title><body>标签!

    框架的优点

    • 重载页面时不需要重载整个页面,只需要重载页面中的一个框架页(减少了数据的传输,增加了网页下载速度)
    • 方便制作导航栏

    框架的缺点

    • 会产生很多页面,不容易管理
    • 不容易打印
    • 浏览器的后退按钮无效
    • 代码复杂,无法被一些搜索引擎索引到
    • 多数小型的移动设备(PDA 手机)无法完全显示框架
    • 多框架的页面会增加服务器的http请求
    • 由于上面诸多缺点,因此不符合标准网页设计的理念,已经被标准网页设计抛弃

    提示: 目前框架的所有优点完全可以使用Ajax实现,因此已经没有必要使用框架了。

    CSS盒模型原理

    • 1、W3C 盒子模型的范围包括 margin、border、padding、content,并且 content 部分不包含其他部分。
    • 2、IE 盒子模型的范围也包括 margin、border、padding、content,和标准 W3C 盒子模型不同的是:IE 盒子模型的 content 部分包含了 border 和 pading。

    CSS display:none和visibility:hidden的区别

    • visibility:hidden隐藏,但在浏览时保留位置
    • display:none视为不存在,且不加载

    jQuery是什么?

    jQuery是javascript编写一个可重用的JavaScript库。

    不使用jQuery设置UI文本的JavaScript代码如下:

    document.getElementById("txt1").value = "hello"; 

    用jQuery类库后的的JavaScript代码如下:

    $("#txt1").val("Hello"); 

    可见,在使用jQuery类库后的JavaScript代码明显简洁了很多,也更符合IT行业特点:短、平、快。

    jquery与JavaScript的关系,jQuery会取代JavaScript吗?

    • JavaScript:是一门Web最流行的脚本语言。
    • jQuery: 是一个优秀的Javascript框架。它是轻量级的js库 ,它兼容CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。

    jQuery是并不是要取代的JavaScript。使用jQuery使Web开发变得简单。

    如何使用jQuery库?

    从jquery.com下载的jquery.js文件(最新的jQuery版本V1.11.1或V2.1.1)。 jQuery的文件规则,如"jquery-1.4.1.j s",其中1.4.1是JS文件的版本的版本号。

    在开发Web程序前,需要包含的JavaScript,如图下面的代码:

    <script src="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>

    CDN(内容分发网络)是什么?

    在开发Web页面,考虑最多的问题之一是页面在客户端电脑的响应:时间越短,用户体验越好。

    而制约用户体验的关键因素之一是浏览器下载Web文件大小,包括*.html、图片、*.js、*.css等文件。

    为了最大化复用和节约带宽,故CDN应运而生:其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。

    如何使用jQuery CDN?

    • (1)推荐使用官方的CDN节点,使用代码如下:
      <script src="//code.jquery.com/jquery-1.11.0.min.js"></script> 
      <script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script> 
    • 2)还有Google提供的jQuery CDN:
      <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
    • (3)同时微软也提供了jQuery CDN的节点:
      <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery-1.9.1.min.js"> </script>

    如何在CDN网络不可访问情况下,能自动访问网站的jQuery文件?

    一般情况下,CDN网络节点是可靠的。但是偶尔也有失灵的时候,故为了提供双保险,可进行判断网络加载CDN失败,则自动加载网站上的jQuery, 示例代码如下:

    <script type="text/javascript" src="http:/ajax.microsoft.com/ajax/jquery/jquery-1.9.1.min.js"></script> 
    <script type="text/javascript">
    if (typeof jQuery == 'undefined')  
    {  
    	document.write(unescape("%3Cscript src='Scripts/jquery.1.9.1.min.js' type='text/javascript'%3E%3C/script%3E"));  
    }
    </script> 

    同版本的jQuery.js文件和jQuery.min.js有何不同?

    • 相同:这两个文件提供相同的jQuery的功能,即在函数调用上没有区别。
    • 不同:jQuery.js文件,适合让程序员阅读。jQuery.min.js文件,通过压缩和删除所有的空格,以节省带宽和空间,使得文件更小,用于网络传输,不适合程序员阅读。

    何时使用jquery.js,何时使用jquery.min.js?

    • 开发调试场景下:用jQuery.js文件,因为你想调试,能够看到javascript代码。
    • 生产部署环境下:用jQuery.min.js文件,可减少网络宽度,加快网页加载速度。

    jQuery.vsdoc.js文件是什么?

    *.vsdoc.js文件是用来在微软的开发环境Visual Studio下使用的,方便得获得jQuery的智能感知,当你输入jQuery函授后,会自动提示函数的类型、函数使用说明、函数参数等等。如果在VS下用jQuery开发Web程序,则vsdoc.js文件会大大的提高开发效率。

    jQuery的基本语法如何解释?

    jQuery的语法结构可以分为四部分:

    • 1、默认情况下,所有Jquery的命令开始以一个"$"符号。
    • 2、其次是HTML元素的选择。例如下面是我们通过ID"txt1"选择一个HTML文本框。
    • 3、接着由点(.)分隔。这个操作者将分离的元素和该元素的动作(函数)。
    • 4、最后什么样的函数(动作)。

    在jQuery中,"$"符号代表什么?

    在jQuery中,"$"符号是一个jQuery的别名,默认的jQuery类库以$开头。

    为何要使用jQuery.noConflict()?

    有很多类似jQuery一样的类库,如MooTools, Backbone, Sammy, Cappuccino, Knockout 。这些类库中,有的也使用了$符号,如果同时使用,则会导致命名冲突。

    为了解决这个冲突,需要用到jQuery.noConflict(),这样就不依赖$这个默认符号了。例如:

    jQuery.noConflict();  
    (function($){
    
    })(jQuery);

    同一个页面中,能否加载多个个document.ready事件?

    可以。



    原文出处:http://www.runoob.com/w3cnote/front-end-development.html

    展开全文
  • 最全前端面试题

    2016-12-08 18:43:05
    去掉或样式丢失的时候能让页面呈现清晰的结构;屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页;PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对 CSS的支持较弱...

    你如何理解HTML结构的语意化

    1. 去掉或样式丢失的时候能让页面呈现清晰的结构;
    2. 屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页;
    3. PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对
      CSS的支持较弱);
    4. 搜索引擎的爬虫也依赖于标记来确定上下文和各个关键字的权重;
    5. 你的页面是否对爬虫容易理解非常重要,因为爬虫很大程度上会忽略用于表现的标记,而只注重语义标记;
    6. 便于团队开发和维护。

    Doctype文档声明的严格模式和混杂模式,如何触发这两种模式,区分它们有何意义

    如何触发两种模式
    加入xml头部声明,可以触发IE浏览器的Quirks mode,触发之后,浏览器解析方式就和IE5.5一样,拥有IE5.5一样的bug和其他问题,行为(JavaScript)也是如此。      
    IE6的触发:在XHTML的DOCTYPE前加入XML声明
    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    IE7的触发:在XML声明和XHTML的DOCTYPE之间,加入HTML注释
    <?xml version="1.0" encoding="utf-8"?>
    <!– … and keep IE7 in quirks mode –>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    IE6和IE7都可以触发的:在HTML4.01的DOCTYPE文档头部,加入HTML注释
    <!– quirks mode –>  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    在页面顶部加 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">,将触发“怪异模式”
    没有使用DTD声明或者使用HTML4以下(不包括HTML4)的DTD声明时,基本上所有的浏览器都是使用quirks mode呈现

    谈谈以前端角度出发做好SEO需要考虑什么

    1. 了解搜索引擎如何抓取网页和如何索引网页
    2. Meta标签优化
    3. 如何选取关键词并在网页中放置关键词
    4. 了解主要的搜索引擎
    5. 主要的互联网目录
    6. 按点击付费的搜索引擎
    7. 搜索引擎登录
    8. 链接交换和链接广泛度(Link Popularity)
    9. 标签的合理使用

    我们知道可以以外链的方式引入CSS文件,请谈谈外链引入CSS有哪些方式,这些方式的性能有区别吗

    CSS的引入方式最常用的有三种
    第一:在head部分加入<link rel="stylesheet" type="text/css" href="my.css" rel="nofollow" target="_blank" />,引入外部的CSS文件;
    第二:在head部分加入 
    <style type="text/css"> 
    div{margin: 0;padding: 0;border:1px red solid;} 
    </style>
    第三:直接在页面的标签里加<div style="border:1px red solid;">

    CSS Sprite是什么,谈谈这个技术的优缺点

    CSS sprites在国内很多人叫css精灵,是一种网页图片应用处理方式。它允许你将一个页面涉及到的所有零星图片都包含到
    中去,减少对服务器的请求次数,提高访问速度。
    优点
    (1)利用CSS Sprites能很好地减少了网页的http请求,从而大大的提高了页面的性能,这也是CSS Sprite的优点,也是其被广泛传播和应用的主要原因;
    (2)解决了网页设计师在图片命名上的困扰,只需对一张集合的图片上命名就可以了,不需要对每一个小元素命名,从而提高了网页的制作效率。
    (3)换风格方便,只需要在一张或少张图片上修改图片的颜色或样式,整个网页的风格就可以改变。维护起来也很方便。
    缺点
    (1)在图片合并的时候,你要把多张图片有序的合理的合并成一张图片,还要留好足够的空间,防止板块内显示不必要的背景;这些还好,最痛苦的是在宽屏,高分辨率的屏幕下的自适应页面,你的图片如果不够宽,很容易将背景断裂;
    (2)CSS Sprites在开发的时候比较麻烦,你要通过photoshop或其他工具测量计算每一个背景单元的精确位是针线活,没什么难度,但是很繁琐。
    (3)CSS Sprites在维护的时候比较麻烦,如果页面背景有少许改动,一般就要改这张合并的图片,无需改的好不要动,这样避免改动更多的css,如果在原来的地方放不下,又只能(最好)往下加图片,这样图片的字加了,还要改动css。

    以CSS3标准定义一个webkit内核浏览器识别的圆角(尺寸随意)
    -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius:10px;

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

    行内元素有:a b span I em img input select strong 
    级元素有:div ul ol li dl dt dd h1 h2 h3 h4 p 
    盒模型:margin border padding width

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

    网页分成三个层次,即:结构层表示层行为层
    1、网页的结构层(structurallayer)由HTML 或XHTML 之类的标记语言负责创建。标签,也就是那些出现在尖括号里的单词,对网页内容的语义含义做出这些标签不包含任何关于如何显示有关内容的信息。例如,P标签表达了这样一种语义:“这是一个文本段。”
    2、网页的表示层(presentationlayer)由CSS 负责创建。CSS对“如何显示有关内容”的问题做出了回答。
    3、网页的行为层(behaviorlayer)负责回答“内容应该如何对事件做出反应”这一问题。这是Javascript 语言和DOM 主宰的领域。

    html中form里action方法的get和post有什么区别

    1. Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据
    2. Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL
    3. Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。Post的所有操作对用户来说都是不可见的
    4. Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post(当然还有一个原因,将在后面的提到)
    5. Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集
    6. Get是Form的默认方法

    html元素的id跟class什么区别

    id和class是网页中两个通用属性,他们协同工作使整个页面丰富多彩,当我们为一个元素定义样式时,二者都可用,但有区别

    1. 在css样式表中书写时,id选择符前缀应加“#”,class选择符前缀应加“.”
    2. id属性在一个页面中书写时只能使用一次,而class可以反复使用
    3. id作为元素标签用于区分不同结构和内容,而class作为一个样式,可以应用到任何结构和内容当中去
    4. 布局上的一般原则:id先确定结构和内容再为它定义样式。而class正好相反,是先定义样式,然后在页面中根据不同需求把样式应用到不同结构和内容上
    5. 目前浏览器都允许同一个页面出现多个相同属性值的id,一般情况能正常显示,不过当javascript通过id来控制元素时就会出错
    6. 在实际应用中,class常被用到文字版块和页面修饰上,而id多被用在宏伟布局和设计包含块,或包含框的样式

    Ajax是什么

    Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。Ajax包括:

    1. XHTML和CSS
    2. 使用文档对象模型(Document Object Model)作动态显示和交互
    3. 使用XML和XSLT做数据交互和操作
    4. 使用XMLHttpRequest进行异步数据接收
    5. 使用JavaScript将它们绑定在一起 

    你做的页面在哪些流览器测试过

    这些浏览器的内核分别是什么?经常遇到的浏览器的兼容性有哪些?怎么会出现?解决方法是什么?

    1. DOCTYPE 影响 CSS 处理 
    2. FF: 设置 padding 后, div 会增加 height 和 width, 但 IE 不会, 故需要用 !important 多设一个 height 和 width
    3. FF: 支持 !important, IE 则忽略, 可用 !important 为 FF 特别设置样式 
    4. div 的垂直居中问题: vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行
    5. 在mozilla firefox和IE中的BOX模型解释不一致导致相差2px       解决方法:  div{margin:30px!important;margin:28px;}  注意这两个margin的顺序一定不能写反,!important这个属性IE不能识别,但别的浏览器可以识别。

    HTML5 离线存储

    H5的一个重要特性就是离线存储,所谓的离线存储就是将一些资源文件保存在本地,这样后续的页面重新加载将使用本地资源文件,在离线情况下可以继续访问web应用,同时通过一定的手法(更新相关文件或者使用相关API),可以更新、删除离线存储等操作;

    H5的离线存储使用一个manifest文件来标明哪些文件是需要被存储的,使用如 <html manifest='offline.manifest'> 来引入一个manifest文件,这个文件的路径可以是相对的,也可以是绝对的,如果你的web应用很多,而且希望能集中管理manifest文件,那么静态文件服务器是个不错的选择。

    iframe的优缺点

    缺点
      在网页中使用框架结构最大的弊病是搜索引擎的“蜘蛛”程序无法解读这种页面。当“蜘蛛”程序遇到由数个框架组成的网页时,它们只看到框架而无法找到链 接,因此它们会以为该网站是个死站点,并且很快转身离去。对一个网站来说这无异于一场灾难。如果你想销售产品,你需要客户;如想得到客户,你首先要让人们 访问你的网站,而要做到这一点,你就非求助于搜索引擎不可。你花费了大量的时间、精力和金钱开设了一家网上商店,却又故意不让搜索引擎检索你,这就好象开 家零售商店,却将窗户全部漆成黑色,而且还不挂任何招牌一样。
    优点
      从上文中我们可以发现,使用ifame框架的弊端是无法被搜索引擎所爬行抓取。但凡事总是具有两面性。它的这个缺点也可能是他的优点。利用这一点那我 们就可以把我们站点上一些需要给我们的用户查看,但是不需要搜索引擎爬行的内容用ifame框架进行显示,这样就可以让ifram发挥真正的效果了,而且 有我们站点中的代码也可以得到很大的精简,举一个例子,就如笔者上文提到的添加微博直播信息,这些微博信息我们并不需要提供给搜索引擎,而我们需要提供的 是与访客的一个互动的体验,如下图所示,而如果我们使用ifame框架嵌入微博的信息,不仅可以简便的添加站点的微博直播平台,同时我们看到代码也十分的 精简。
      iframe好在能够把原先的网页全部原封不动显示下来,但是如果用在首页,是搜索引擎最套讨厌的.那么你的网站即使做的在好,也排不到好的名次!如 果是动态网页,用include还好点!但是必须要去除他 的<html><head><title><body>标签!
    总结

    框架的优点
        重载页面时不需要重载整个页面,只需要重载页面中的一个框架页(减少了数据的传输,增加了网页下载速度)
        方便制作导航栏
    框架的缺点
        会产生很多页面,不容易管理
        不容易打印
        浏览器的后退按钮无效
        代码复杂,无法被一些搜索引擎索引到
        多数小型的移动设备(PDA 手机)无法完全显示框架
        多框架的页面会增加服务器的http请求
        由于上面诸多缺点,因此不符合标准网页设计的理念,已经被标准网页设计抛弃

    提示: 目前框架的所有优点完全可以使用Ajax实现,因此已经没有必要使用框架了。

    CSS盒模型原理

    1. W3C 盒子模型的范围包括 margin、border、padding、content,并且 content 部分不包含其他部分。 
    2. IE 盒子模型的范围也包括 margin、border、padding、content,和标准 W3C 盒子模型不同的是:IE 盒子模型的 content 部分包含了 border 和 pading。
    展开全文
  • 前端面试宝典(一)

    千次阅读 2016-10-21 16:36:57
    1、去掉或样式丢失的时候能让页面呈现清晰的结构; 2.屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页; 3.PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对 ...

    你如何理解HTML结构的语意化?

    1、去掉或样式丢失的时候能让页面呈现清晰的结构;
    2.屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页;
    3.PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对
    CSS的支持较弱);
    4.搜索引擎的爬虫也依赖于标记来确定上下文和各个关键字的权重;
    5.你的页面是否对爬虫容易理解非常重要,因为爬虫很大程度上会忽略用于表现的标记,而只注重语义标记;
    6、便于团队开发和维护。


    Doctype文档声明的严格模式和混杂模式,如何触发这两种模式,区分它们有何意义? 
    1、如何触发两种模式:
    加入xml头部声明,可以触发IE浏览器的Quirks mode,触发之后,浏览器解析方式就和IE5.5一样,拥有IE5.5一样的bug和其他问题,行为(JavaScript)也是如此。      
    2、IE6的触发:在XHTML的DOCTYPE前加入XML声明,
    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    3、IE7的触发:在XML声明和XHTML的DOCTYPE之间,加入HTML注释
    <?xml version="1.0" encoding="utf-8"?>
    <!-- ... and keep IE7 in quirks mode -->
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    4、IE6和IE7都可以触发的:在HTML4.01的DOCTYPE文档头部,加入HTML注释
    <!-- quirks mode -->  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    5、在页面顶部加 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">,将触发“怪异模式”
    6、没有使用DTD声明或者使用HTML4以下(不包括HTML4)的DTD声明时,基本上所有的浏览器都是使用quirks mode呈现


    谈谈以前端角度出发做好SEO需要考虑什么?
    1、了解搜索引擎如何抓取网页和如何索引网页;
    2、Meta标签优化;
    3、如何选取关键词并在网页中放置关键词;
    4、了解主要的搜索引擎;
    5、主要的互联网目录
    6、按点击付费的搜索引擎;
    7、搜索引擎登录;
    8、链接交换和链接广泛度(Link Popularity);
    9、标签的合理使用。


    我们知道可以以外链的方式引入CSS文件,请谈谈外链引入CSS有哪些方式,这些方式的性能有区别吗?
    CSS的引入方式最常用的有三种:
    第一:在head部分加入<link rel="stylesheet" type="text/css" href="my.css"/>,引入外部的CSS文件;
    第二:在head部分加入 
    <style type="text/css"> 
    div{margin: 0;padding: 0;border:1px red solid;} 
    </style>
    第三:直接在页面的标签里加<div style="border:1px red solid;">


    CSS Sprite是什么,谈谈这个技术的优缺点。
    CSS sprites在国内很多人叫css精灵,是一种网页图片应用处理方式。它允许你将一个页面涉及到的所有零星图片都包含到
    中去,减少对服务器的请求次数,提高访问速度。
    1、优点:
    (1)利用CSS Sprites能很好地减少了网页的http请求,从而大大的提高了页面的性能,这也是CSS Sprite的优点,也是其被广泛传播和应用的主要原因;
    (2)解决了网页设计师在图片命名上的困扰,只需对一张集合的图片上命名就可以了,不需要对每一个小元素命名,从而提高了网页的制作效率。
    (3)换风格方便,只需要在一张或少张图片上修改图片的颜色或样式,整个网页的风格就可以改变。维护起来也很方便。
    2、缺点:
    (1)在图片合并的时候,你要把多张图片有序的合理的合并成一张图片,还要留好足够的空间,防止板块内显示不必要的背景;这些还好,最痛苦的是在宽屏,高分辨率的屏幕下的自适应页面,你的图片如果不够宽,很容易将背景断裂;
    (2)CSS Sprites在开发的时候比较麻烦,你要通过photoshop或其他工具测量计算每一个背景单元的精确位是针线活,没什么难度,但是很繁琐。
    (3)CSS Sprites在维护的时候比较麻烦,如果页面背景有少许改动,一般就要改这张合并的图片,无需改的好不要动,这样避免改动更多的css,如果在原来的地方放不下,又只能(最好)往下加图片,这样图片的字加了,还要改动css。


    以CSS3标准定义一个webkit内核浏览器识别的圆角(尺寸随意)
    -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius:10px;


    行内元素有哪些?块级元素有哪些?CSS的盒模型?
    行内元素有:a b span I em img input select strong 
    级元素有:div ul ol li dl dt dd h1 h2 h3 h4 p 
    盒模型:margin border padding width


    前端页面有哪三层构成,分别是什么?作用是什么?
    网页分成三个层次,即:结构层、表示层、行为层。
    1、网页的结构层(structurallayer)由HTML 或XHTML 之类的标记语言负责创建。标签,也就是那些出现在尖括号里的单词,对网页内容的语义含义做出这些标签不包含任何关于如何显示有关内容的信息。例如,P标签表达了这样一种语义:“这是一个文本段。”
    2、网页的表示层(presentationlayer)由CSS 负责创建。CSS对“如何显示有关内容”的问题做出了回答。
    3、网页的行为层(behaviorlayer)负责回答“内容应该如何对事件做出反应”这一问题。这是Javascript 语言和DOM 主宰的领域。


    html中form里action方法的get和post有什么区别

    1、Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据。
    2、Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。
    3、Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。Post的所有操作对用户来说都是不可见的。
    4、Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post(当然还有一个原因,将在后面的提到)。
    5、Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。
    6、Get是Form的默认方法。


    html元素的id跟class什么区别
    id和class是网页中两个通用属性,他们协同工作使整个页面丰富多彩,当我们为一个元素定义样式时,二者都可用,但有区别
    1、在css样式表中书写时,id选择符前缀应加“#”,class选择符前缀应加“.”
    2、id属性在一个页面中书写时只能使用一次,而class可以反复使用
    3、id作为元素标签用于区分不同结构和内容,而class作为一个样式,可以应用到任何结构和内容当中去
    4、布局上的一般原则:id先确定结构和内容再为它定义样式。而class正好相反,是先定义样式,然后在页面中根据不同需求把样式应用到不同结构和内容上
    5、目前浏览器都允许同一个页面出现多个相同属性值的id,一般情况能正常显示,不过当javascript通过id来控制元素时就会出错
    6、在实际应用中,class常被用到文字版块和页面修饰上,而id多被用在宏伟布局和设计包含块,或包含框的样式。


    Ajax是什么?
    Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。Ajax包括:
    1、XHTML和CSS
    2、使用文档对象模型(Document Object Model)作动态显示和交互
    3、使用XML和XSLT做数据交互和操作
    4、使用XMLHttpRequest进行异步数据接收
    5、使用JavaScript将它们绑定在一起 


    你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?经常遇到的浏览器的兼容性有哪些?怎么会出现?解决方法是什么?
    1、DOCTYPE 影响 CSS 处理 
    2、FF: 设置 padding 后, div 会增加 height 和 width, 但 IE 不会, 故需要用 !important 多设一个 height 和 width
    3、FF: 支持 !important, IE 则忽略, 可用 !important 为 FF 特别设置样式 
    4、div 的垂直居中问题: vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行
    5、在mozilla firefox和IE中的BOX模型解释不一致导致相差2px       解决方法:  div{margin:30px!important;margin:28px;}  注意这两个margin的顺序一定不能写反,!important这个属性IE不能识别,但别的浏览器可以识别。


    [HTML5]离线存储
    H5的一个重要特性就是离线存储,所谓的离线存储就是将一些资源文件保存在本地,这样后续的页面重新加载将使用本地资源文件,在离线情况下可以继续访问web应用,同时通过一定的手法(更新相关文件或者使用相关API),可以更新、删除离线存储等操作;

    H5的离线存储使用一个manifest文件来标明哪些文件是需要被存储的,使用如 <html manifest='offline.manifest'> 来引入一个manifest文件,这个文件的路径可以是相对的,也可以是绝对的,如果你的web应用很多,而且希望能集中管理manifest文件,那么静态文件服务器是个不错的选择。


    iframe的优缺点
    1、缺点:
      在网页中使用框架结构最大的弊病是搜索引擎的“蜘蛛”程序无法解读这种页面。当“蜘蛛”程序遇到由数个框架组成的网页时,它们只看到框架而无法找到链 接,因此它们会以为该网站是个死站点,并且很快转身离去。对一个网站来说这无异于一场灾难。如果你想销售产品,你需要客户;如想得到客户,你首先要让人们 访问你的网站,而要做到这一点,你就非求助于搜索引擎不可。你花费了大量的时间、精力和金钱开设了一家网上商店,却又故意不让搜索引擎检索你,这就好象开 家零售商店,却将窗户全部漆成黑色,而且还不挂任何招牌一样。
    2、优点:
      从上文中我们可以发现,使用ifame框架的弊端是无法被搜索引擎所爬行抓取。但凡事总是具有两面性。它的这个缺点也可能是他的优点。利用这一点那我 们就可以把我们站点上一些需要给我们的用户查看,但是不需要搜索引擎爬行的内容用ifame框架进行显示,这样就可以让ifram发挥真正的效果了,而且 有我们站点中的代码也可以得到很大的精简,举一个例子,就如笔者上文提到的添加微博直播信息,这些微博信息我们并不需要提供给搜索引擎,而我们需要提供的 是与访客的一个互动的体验,如下图所示,而如果我们使用ifame框架嵌入微博的信息,不仅可以简便的添加站点的微博直播平台,同时我们看到代码也十分的 精简。
      iframe好在能够把原先的网页全部原封不动显示下来,但是如果用在首页,是搜索引擎最套讨厌的.那么你的网站即使做的在好,也排不到好的名次!如 果是动态网页,用include还好点!但是必须要去除他 的<html><head><title><body>标签!
    总结:框架的优点
        重载页面时不需要重载整个页面,只需要重载页面中的一个框架页(减少了数据的传输,增加了网页下载速度)
        方便制作导航栏
    框架的缺点
        会产生很多页面,不容易管理
        不容易打印
        浏览器的后退按钮无效
        代码复杂,无法被一些搜索引擎索引到
        多数小型的移动设备(PDA 手机)无法完全显示框架
        多框架的页面会增加服务器的http请求
        由于上面诸多缺点,因此不符合标准网页设计的理念,已经被标准网页设计抛弃

    提示: 目前框架的所有优点完全可以使用Ajax实现,因此已经没有必要使用框架了。


    CSS盒模型原理
    1、W3C 盒子模型的范围包括 margin、border、padding、content,并且 content 部分不包含其他部分。 
    2、IE 盒子模型的范围也包括 margin、border、padding、content,和标准 W3C 盒子模型不同的是:IE 盒子模型的 content 部分包含了 border 和 pading。


    CSS display:none和visibility:hidden的区别
    visibility:hidden隐藏,但在浏览时保留位置;CSS display:none视为不存在,且不加载!

    展开全文
  • web 前端面试题 总结

    2018-08-28 13:21:50
    1、去掉或样式丢失的时候能让页面呈现清晰的结构。 2、屏幕阅读器(如果访客有视障)会完全根据你的标记来"读"你的网页。 3、PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些...
  • 1、去掉或样式丢失的时候能让页面呈现清晰的结构; 2.屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页; 3.PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对 ...
  • javscript面试题(一)

    2014-07-02 16:57:00
    1、去掉或样式丢失的时候能让页面呈现清晰的结构;2.屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页;3.PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对CSS的...
  • 对语义化的理解?

    2017-10-19 09:18:59
    1.去掉或样式丢失的时候能让页面呈现清晰的结构:html本身是没有表现的, 2.屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页。 3.PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染...
  • html语义化

    2016-03-14 15:21:49
    去掉样式或丢掉样式后能让页面显示清晰的结构。 有利于SEO。爬虫依赖于标签来确定上下文和各个关键字的权重,它会忽略有关样式的标记,只关注语义标记。和搜索引起建立良好的沟通,有利于爬虫抓取更多有效的信息。 ...
  •  高度界面自定义 可自定义去掉多引擎搜索、在页面查找按钮、高亮关键字按钮和“+”号新建标签按钮 等。  强大的标签右键功能 可关闭当前标签,关闭当前网站标签,关闭左侧右侧标签,关闭除当前页外的标签等等,...
  • PowerWord.exe

    2020-04-01 09:23:25
    拍照取词用户体验提升, [1] [9] 增加传感器辅助提醒,首页单词增加考研词汇, [2] [9] 中文翻译结果的优化,阅读页功能栏悦读时隐藏,提示更新的网络环境判断:3G下不要提示,微博登陆页面中添加关注词霸官方微博。...
  • 阅读工具 开卷有益

    2012-03-31 14:07:03
    经楼主亲身检测 改程序完美支持酷派f800及windows CE 系统手机 1、开卷操作快速入门: 小说阅读界面: 1、点屏幕上下部分: 前后翻页 2、长按屏幕上下部分:连续翻页 3、水平左右横向滑动:前后翻页、阅读导航(CHM)...
  • 新分页页面中显示了最近九个造访过网站的缩图,以及最常搜索的网站、最近的书签和最近关闭的分页。  多功能网址列(Omnibox)  在每个标签页的上方是被称作“Omnibox”的网址列,是根据Opera上的网址列而来。...
  • - 选中文件时,移动到屏幕可视区域(解决上下左右选中文件滚动条不一致问题) ###ver2.51 `2014/6/22` ---- ####fix bug:(bug解决和程序优化) - 登陆多次密码输入错误验证码bug解决 - 修复漏洞:创建副本加入...
  • 实例034 使用goto语句在数组中搜索指定图书 42 第3章 字符串处理技术 44 3.1 字符及字符串转换 45  实例035 将字母全部转换为大写或小写 45  实例036 字母与ASCII码的转换 46  实例037 汉字与区位码的...
  • 实例034 使用goto语句在数组中搜索指定图书 第3章 字符串处理技术 3.1 字符及字符串转换 实例035 将字母全部转换为大写或小写 实例036 字母与ASCII码的转换 实例037 汉字与区位码的转换 实例038 将汉字转换为...
  • 实例034 使用goto语句在数组中搜索指定图书 第3章 字符串处理技术 3.1 字符及字符串转换 实例035 将字母全部转换为大写或小写 实例036 字母与ASCII码的转换 实例037 汉字与区位码的转换 实例038 将汉字转换为...
  • 实例034 使用goto语句在数组中搜索指定图书 第3章 字符串处理技术 3.1 字符及字符串转换 实例035 将字母全部转换为大写或小写 实例036 字母与ASCII码的转换 实例037 汉字与区位码的转换 实例038 将汉字转换为...
  • 实例034 使用goto语句在数组中搜索指定图书 42 第3章 字符串处理技术 44 3.1 字符及字符串转换 45 实例035 将字母全部转换为大写或小写 45 实例036 字母与ASCII码的转换 46 实例037 汉字与区位码的转换 48 实例038 ...
  • C#编程经验技巧宝典

    热门讨论 2008-06-01 08:59:33
    111 <br>0184 如何在ASP.NET中获取文件的扩展名 111 <br>0185 如何在ASP.NET中用URL在页面之间传值 112 <br>0186 如何使用IsPostBack实现ASP.NET页面加载 112 <br>0187 如何利用输出缓存技术缓存...

空空如也

空空如也

1 2
收藏数 23
精华内容 9
关键字:

去掉手机屏幕搜索页面