【前端面试】HTML5+CSS3初级面试

来源:互联网 发布:python post 发送文件 编辑:程序博客网 时间:2024/05/29 10:20

1、简单说一下对HTML5+CSS3的了解。

     HTML5和CSS3不仅是两项新的Web技术标准,而且代表了下一代HTML和CSS技术。其未来的发展前景已经可以预见,那就是HTML5必将被越来越多的Web开发人员所使用。各大浏览器厂家已经积极更新自己的产品,以更好地支持Html5.它的优势主要有以下几点:

    1)更多的描述性标签:HTML5引入非常多的描述性标签。

    2)良好的媒体支持:对于先前以插件的方式播放音频、视频带来的麻烦,HTML5有了解决方案,audio和video标签能够方便地实现应变。

    3)更强大的Web应用:HTML5提供了令人称奇的功能,在某些情况下,甚至可以放弃使用第三方的技术。

    4)跨文档信息通讯:Web浏览器会组织不同域间的脚本交互或影响,但是对于可信任的脚本或者就是麻烦。HTML5引入了一套安全且易于实现的应对方案。

    5)Web Sockets:HTML5提供了对Web Sockets的支持。

    6)客户端存储:HTML5的Web Storage和Web SQL Database API,可以在浏览器中构建Web应用的客户端持久化数据。

    7)更加精美的界面:HTML5+CSS3组合渲染出来的界面效果更加精美。

    8)更强大的表单:HTML5提供了功能更加强大的表单界面控件,使用方便。

    9)提升可访问性:内容更加清晰,使用户的操作更加简单方便,提升用户体验。

    10)先进的选择器:CSS3选择器可以方便的识别出表格的奇偶行,复选框等,代码标记更少。

    11)视觉效果:具有精美的界面,有阴影、渐变、圆角、旋转等视觉效果。

    CSS3是CSS技术的升级版本,CSS3语言开发是朝着模块化发展的。作为一个模块,以前的规范太庞大,而且比较复杂,所以把它分解为一些小的模块,使更多的模块被加进来。这些模块包括:盒子模型、列表模块、超链接方式、语言模块、背景和边框、文字特效、多栏布局等。

2、如果把HTML5看成一个开放平台,那它的构建模块有哪些。

     如果把HTML5看成一个开放平台,它构建的模块至少包括以下几个:<nav>、<header>、<section>、<footer>。

    <nav>标签用来将具有导航性质的链接划分在一起,使代码结构在语义化方面更加准确。

    <header>标签用来定义文档的页眉。

    <section>标签用来描述文档的结构。

    <footer>标签用来定义页脚。在典型情况下,该元素会包含作者的姓名,文档的创作日期以及联系信息。

3、CSS3有哪些新内容,请至少说出5个。

    1)CSS3圆角表格,对应属性:border-radius。

    2)以往对网页上的文字加特效只能用filter属性,但是在CSS3中专门制定了一个加文字特效的属性,而且不止加阴影这种效果。

对应属性:font-effect。

    3)丰富了对链接下划线的样式,以往的下划线都是直线,这次可不一样了,有波浪线、点线、虚线等等,更可对下划线的颜色和

位置进行任意改变,哈哈~~下划线的世界从此不再单一。(还有对应顶线和中横线的样式,效果与下划线类似)对应属性:text-

underline-style,text-underline-color,text-underline-mode,text-underline-position。

    4)我们在做笔记时经常要在文字下点几个点或打个圈什么的,以示重点,CSS3也开始加入了这项功能,这应该在某些特定网页

上很有用。对应属性:font-emphasize-style和font-emphasize-position。

    5)Font-face可以用来加载字体样式,而且它还能够加载服务器端的字体文件,显示客户端没有安装的字体。

4、HTML5有哪些新内容,请至少说出5个。

    1)HTML5已经确定引入canvas标签,通过canvas,用户可以动态生成各种图形图像,图标以及动画。canvas标签还能够配合

JavaScript利用键盘来控制图形图像。

    2)在HTML5中包含Web Forms 2.0,用来描绘如何进行页面表格操作。其中最大的特点就是“表格确认”。当前,开发者通常

使用JavaScript(客户端)和PHP(服务端)代码来确认输入的内容。

    3)HTML5为新元素和现有的元素提供更多的API,旨在改进页面程序开发和增加HTML4所缺乏的特性。比如,一个视频和音频

方面的API将与<audio>和<video>元素一起使用,它将提供视频和音频的回放功能,而无须依赖第三方程序,比如flash。

    4)语意化更好的内容元素,比如 article、footer、header、nav、section。

    5)新的表单控件,比如 calendar、date、time、email、url、search。

5、HTML5新增的语义化标签有哪些。

    HTML5新增的语义化标签有很多,比如:

    1)<section></section>用于对网站或应用程序中页面上的内容进行分块。通常由内容及其标题组成。

    2)<article></article>代表文档、页面或应用程序中独立的、完整的、可以独自被外部引用的内容。当我们描述一件具体的事

物的时候,通常使用article来代替section。如一个帖子,一段用户评论等。

    3)<aside></aside>表示当前页面或者文章的附属信息部分。如与当前页面或主要内容相关的引用、侧边栏、广告、nav元素组等。

    4)<nav></nav>用作页面导航的链接组,其中可以包括<ul><li><p>元素等。

    5)<header></header>整个页面或者页面内容区块的标题,可以包含其他内容。

    6)<footer></footer>页脚,页面底部或者版块的内容。

    7)<hgroup></hgroup>页面上标题的组合,通常对h1~h6进行分组。

    8)<figure></figure>通常用于图片,统计图或代码示例,带有可选标题。将其从网页上移除后不会对网页上其他内容产生影响。

    9)<figcaption></figcaption>表示figure的标题,从属于figure元素。

   10)<time></time>表示某个时间或者某个日期。其中pubdate属性代表了文档的发布日期,可以用到time标签里。

6、HTML5新增的属性有哪些。

    1)表单相关的属性

      · 对input(type=text)、select、textarea与button指定autofocus属性。它以指定属性的方式让元素在画面打开时自动获得焦点。

      · 对input(type=text)、textarea指定placeholder属性,它会对用户的输入进行提示,提示用户可以输入的内容。

      · 对input、output、select、textarea、button与fieldset指定form属性。它声明属于哪个表单,然后将其放置在页面的任何位置,而不失表单之内。

     · 对input(type=text)、textarea指定required属性。该属性表示用户提交时进行检查,检查该元素内必定要有输入内容。

     · 为input标签增加几个新的属性:autocomplete、min、max、multiple、pattern与step。还有list属性与datalist元素配合使用;datalist元素与autocomplete属性配合使用。multiple属性允许上传时一次上传多个文件; pattern属性用于验证输入字段的模式,其实就是正则表达式。step 属性规定输入字段的合法数字间隔(假如 step="3",则合法数字应该是 -3、0、3、6,以此类推),step 属性可以与 max 以及 min 属性配合使用,以创建合法值的范围。

     · 为input、button元素增加formaction、formenctype、formmethod、formnovalidate与formtarget属性。用户重载form元素的action、enctype、method、novalidate与target属性。为fieldset元素增加disabled属性,可以把它的子元素设为disabled状态。

     · 为input、button、form增加novalidate属性,可以取消提交时进行的有关检查,表单可以被无条件地提交。

    2)链接相关属性

     · 为a、area增加media属性。规定目标 URL 是为什么类型的媒介/设备进行优化的。该属性用于规定目标 URL 是为特殊设备(比如 iPhone)、语音或打印媒介设计的。该属性可接受多个值。只能在 href 属性存在时使用。

     · 为area增加herflang和rel属性。hreflang 属性规定在被链接文档中的文本的语言。只有当设置了 href 属性时,才能使用该属性。注释:该属性是纯咨询性的。rel 属性规定当前文档与被链接文档/资源之间的关系。只有当使用 href 属性时,才能使用 rel 属性。

     · 为link增加size属性。sizes 属性规定被链接资源的尺寸。只有当被链接资源是图标时 (rel="icon"),才能使用该属性。该属性可接受多个值。值由空格分隔。

     · 为base元素增加target属性,主要是保持与a元素的一致性。

    3)其他属性

     · 为ol增加reversed属性,它指定列表倒序显示。

     · 为meta增加charset属性

     · 为menu增加type和label属性。label为菜单定义一个课件的标注,type属性让才当可以以上下文菜单、工具条与列表cande但三种形式出现。

     · 为style增加scoped属性。它允许我们为文档的指定部分定义样式,而不是整个文档。如果使用 "scoped" 属性,那么所规定的样式只能应用到 style 元素的父元素及其子元素。

     · 为script增减属性,它定义脚本是否异步执行。async 属性仅适用于外部脚本(只有在使用 src 属性时)有多种执行外部脚本的方法:

     · 如果 async="async":脚本相对于页面的其余部分异步地执行(当页面继续进行解析时,脚本将被执行)

     · 如果不使用 async 且 defer="defer":脚本将在页面完成解析时执行

     · 如果既不使用 async 也不使用 defer:在浏览器继续解析页面之前,立即读取并执行脚本

     · 为html元素增加manifest,开发离线web应用程序时他与API结合使用,定义一个URL,在这个URL上描述文档的缓存信息。

     · 为iframe增加撒个属性,sandbox、seamless、srcdoc。用来提高页面安全性,防止不信任的web页面执行某些操作。


0 0