整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

小猿圈WEB前端之HTML5+CSS3面试题(一)

习是一件非常充实的过程,特别是把自己的乐趣变成工作的时候,很多朋友就喜欢学习web前端,所以学习前端,也希望从事前端的工作,但是因为缺少实战经验,所以很多都是卡在面试这关上,下面小猿圈总结了web前端中HTML5+CSS3面试题。

一、移动端(Android IOS)怎么做好用户体验?

1.清晰的视觉纵线

2.信息的分组、极致的减法

3.利用选择代替输入

4.标签及文字的排布方式

5.依靠明文确认密码

6.合理的键盘利用

二、什么是Retina 显示屏,带来了什么问题?

retina:一种具备超高像素密度的液晶屏,同样大小的屏幕上显示的像素点由1个变为多个,如在同样带下的屏幕上,苹果设备的retina显示屏中,像素点1个变为4个

在高清显示屏中的位图被放大,图片会变得模糊,因此移动端的视觉稿通常会设计为传统PC的2倍

那么,前端的应对方案是:

设计稿切出来的图片长宽保证为偶数,并使用backgroud-size把图片缩小为原来的1/2

例如图片宽高为:200px*200px,那么写法如下

.css{width:100px;height:100px;background-size:100px 100px;}

其它元素的取值为原来的1/2,例如视觉稿40px的字体,使用样式的写法为20px

.css{font-size:20px}

三、ios系统中元素被触摸时产生的半透明灰色遮罩怎么去掉

ios用户点击一个链接,会出现一个半透明灰色遮罩, 如果想要禁用,可设置-webkit-tap-highlight-color的alpha值为0,也就是属性值的最后一位设置为0就可以去除半透明灰色遮罩

a,button,input,textarea{-webkit-tap-highlight-color: rgba(0,0,0,0;)}

四、部分android系统中元素被点击时产生的边框怎么去掉

android用户点击一个链接,会出现一个边框或者半透明灰色遮罩, 不同生产商定义出来额效果不一样,可设置-webkit-tap-highlight-color的alpha值为0去除部分机器自带的效果

a,button,input,textarea{

-webkit-tap-highlight-color: rgba(0,0,0,0;)

-webkit-user-modify:read-write-plaintext-only;

}

-webkit-user-modify有个副作用,就是输入法不再能够输入多个字符

另外,有些机型去除不了,如小米2,对于按钮类还有个办法,不使用a或者input标签,直接用div标签。

五、webkit表单元素的默认外观怎么重置

通用:.css{-webkit-appearance:none;}

伪元素改变number类型input框的默认样式

input[type=number]::-webkit-textfield-decoration-container {

background-color: transparent;

}

input[type=number]::-webkit-inner-spin-button {

-webkit-appearance: none;

}

input[type=number]::-webkit-outer-spin-button {

-webkit-appearance: none;

}

六、webkit表单输入框placeholder的颜色值能改变么?

input::-webkit-input-placeholder{color:#AAAAAA;}

input:focus::-webkit-input-placeholder{color:#EEEEEE;}

七、webkit表单输入框placeholder的文字能换行么?

ios可以,android不行

在textarea标签下都可以换行

八、禁止ios 长按时不触发系统的菜单,禁止ios&android长按时下载图片

.css{-webkit-touch-callout: none}

九、禁止ios和android用户选中文字

.css{-webkit-user-select:none}

十、打电话发短信写邮件怎么实现

打电话:<a href="tel:0755-10086">打电话给:0755-10086</a>

发短信,winphone系统无效<a href="sms:10086">发短信给: 10086</a>

写邮件:<a href=“mailto:peun@foxmail.com">peun@foxmail.com</a>

十一、模拟按钮hover效果

移动端触摸按钮的效果,可明示用户有些事情正要发生,是一个比较好体验,但是移动设备中并没有鼠标指针,使用css的hover并不能满足我们的需求,还好国外有个激活移动端css的active效果。

1. 直接在body上添加ontouchstart,同样可激活移动端css的active效果,比较推荐这种方式(兼容性ios5+、部分android 4+、winphone 8)。

2. 要做到全兼容的办法,可通过绑定ontouchstart和ontouchend来控制按钮的类名

十二、audio元素和video元素在ios和andriod中无法自动播放

应对方案:触屏即播

$('html').one('touchstart',function(){

audio.play()

})

以上就是小猿圈web前端老师总结的HTML5+CSS3面试题一部分,想要查看下一部分可以观看的我下篇文章,相信不会让你失望的,学习前端可以到小猿圈网站去看一下最新最全面的前端课程。

号持续更新相关面试题及其答案.......

  1. 请解释一下CSS3是什么以及它与CSS2的区别。
  2. CSS3中的盒模型有哪些属性?请解释一下每个属性的作用。
  3. 请解释一下CSS3中的选择器有哪些新特性?请举例说明。
  4. CSS3中的渐变(Gradient)是什么?请解释一下线性渐变和径向渐变的用法。
  5. CSS3中的动画(Animation)是什么?请解释一下如何使用CSS3实现动画效果。
  6. CSS3中的过渡(Transition)是什么?请解释一下如何使用CSS3实现过渡效果。
  7. CSS3中的阴影(Shadow)是什么?请解释一下如何使用CSS3实现盒子阴影效果。
  8. CSS3中的边框(Border)有哪些新特性?请解释一下如何使用CSS3实现圆角边框效果。
  9. CSS3中的伸缩布局(Flexbox)是什么?请解释一下如何使用CSS3实现弹性布局。
  10. CSS3中的多列布局(Multi-column Layout)是什么?请解释一下如何使用CSS3实现多列布局效果。
  11. CSS3中的媒体查询(Media Queries)是什么?请解释一下如何使用CSS3实现响应式设计。
  12. CSS3中的字体(Fonts)有哪些新特性?请解释一下如何使用CSS3实现自定义字体效果。
  13. CSS3中的变形(Transform)是什么?请解释一下如何使用CSS3实现元素的旋转、缩放和倾斜效果。
  14. CSS3中的过滤器(Filter)是什么?请解释一下如何使用CSS3实现图像的滤镜效果。
  15. CSS3中的伪元素(Pseudo-elements)有哪些新特性?请举例说明如何使用伪元素。
  16. CSS3中的渐变(Gradient)有哪些类型?请解释一下线性渐变和径向渐变的区别。
  17. CSS3中的动画(Animation)属性有哪些?请解释一下animation-name、animation-duration和animation-delay的作用。
  18. CSS3中的过渡(Transition)属性有哪些?请解释一下transition-property、transition-duration和transition-timing-function的作用。
  19. CSS3中的媒体查询(Media Queries)有哪些常见的使用场景?请举例说明。
  20. CSS3中的弹性布局(Flexbox)有哪些常用属性?请解释一下flex-direction、flex-wrap和flex-grow的作用。
  21. CSS3中的多列布局(Multi-column Layout)有哪些常见的应用场景?请举例说明。
  22. CSS3中的字体(Fonts)属性有哪些新特性?请解释一下@font-face和font-display的作用。
  23. CSS3中的变形(Transform)属性有哪些常见的应用?请举例说明如何使用transform实现元素的平移、旋转和缩放效果。
  24. CSS3中的过滤器(Filter)属性有哪些常用的效果?请解释一下filter属性的常见用法。
  25. CSS3中的伪类(Pseudo-classes)和伪元素(Pseudo-elements)有什么区别?请举例说明。
  26. CSS3中的盒阴影(Box Shadow)属性有哪些常见的应用场景?请解释一下box-shadow属性的用法。
  27. CSS3中的选择器(Selectors)有哪些新特性?请解释一下属性选择器和伪类选择器的用法。
  28. CSS3中的网格布局(Grid Layout)是什么?请解释一下如何使用CSS3实现网格布局效果。
  29. CSS3中的媒体特性(Media Features)有哪些常用的特性?请举例说明如何使用媒体特性进行响应式设计。
  30. CSS3中的层叠样式表(CSS Cascading)的优先级是如何确定的?请解释一下优先级的计算规则。
  1. CSS3中的响应式布局是什么?请解释一下如何使用CSS3实现响应式布局。
  2. CSS3中的伸缩盒模型(Flexbox)和传统的盒模型有什么区别?请解释一下它们之间的差异。
  3. CSS3中的变量(Variables)是什么?请解释一下如何定义和使用CSS3变量。
  4. CSS3中的层叠上下文(Stacking Context)是什么?请解释一下层叠上下文的概念和如何创建层叠上下文。
  5. CSS3中的伪元素(::before和::after)和伪类(:hover和:focus)有什么区别?请解释一下它们的用途和区别。
  6. CSS3中的混合模式(Blend Mode)是什么?请解释一下如何使用CSS3实现图像混合效果。
  7. CSS3中的网格布局(Grid Layout)和弹性布局(Flexbox)有何区别?请解释一下它们的适用场景和使用方式。
  8. CSS3中的滤镜(Filter)属性有哪些常见的效果?请解释一下如何使用CSS3实现图像滤镜效果。
  9. CSS3中的自定义动画(@keyframes)是什么?请解释一下如何使用@keyframes定义和应用动画。
  10. CSS3中的透明度(Opacity)和可见性(Visibility)属性有何区别?请解释一下它们的作用和使用场景。

众号【传智播客博学谷】回复关键词:前端 PS Java(100G) Python(80G) 大数据 区块链 测试 PPT JS(40g+300教程) HTML 简历 领取相关学习资料!

一、HTML

1、<image>标签上title属性与alt属性的区别是什么?

alt属性是为了给那些不能看到你文档中图像的浏览者提供文字说明的。且长度必须少于100个英文字符或者用户必须保证替换文字尽可能的短。

这包括那些使用本来就不支持图像显示或者图像显示被关闭的浏览器的用户,视觉障碍的用户和使用屏幕阅读器的用户等。

title属性为设置该属性的元素提供建议性的信息。使用title属性提供非本质的额外信息。参考《alt和title属性的区别及应用》

2、分别写出以下几个HTML标签:文字加粗、下标、居中、字体

加粗:<b>、<strong>

下标:<sub>

居中:<center>

字体:<font>、<basefont>、参考《HTML标签列表》

3、请写出至少5个html5新增的标签,并说明其语义和应用场景

section:定义文档中的一个章节

nav:定义只包含导航链接的章节

header:定义页面或章节的头部。它经常包含 logo、页面标题和导航性的目录。

footer:定义页面或章节的尾部。它经常包含版权信息、法律信息链接和反馈建议用的地址。

aside:定义和页面内容关联度较低的内容——如果被删除,剩下的内容仍然很合理。

参考《HTML5 标签列表》

4、请说说你对标签语义化的理解?

a. 去掉或者丢失样式的时候能够让页面呈现出清晰的结构

b. 有利于SEO:和搜索引擎建立良好沟通,有助于爬虫抓取更多的有效信息:爬虫依赖于标签来确定上下文和各个关键字的权重;

c. 方便其他设备解析(如屏幕阅读器、盲人阅读器、移动设备)以意义的方式来渲染网页;

d. 便于团队开发和维护,语义化更具可读性,遵循W3C标准的团队都遵循这个标准,可以减少差异化。

5、Doctype作用? 严格模式与混杂模式如何区分?它们有何意义?

声明位于文档中的最前面,处于 标签之前。告知浏览器以何种模式来渲染文档。

严格模式的排版和 JS 运作模式是,以该浏览器支持的最高标准运行。

在混杂模式中,页面以宽松的向后兼容的方式显示。模拟老式浏览器的行为以防止站点无法工作。

DOCTYPE不存在或格式不正确会导致文档以混杂模式呈现。

6、你知道多少种Doctype文档类型?

标签可声明三种 DTD 类型,分别表示严格版本、过渡版本以及基于框架的 HTML 文档。

HTML 4.01 规定了三种文档类型:Strict、Transitional 以及 Frameset。

XHTML 1.0 规定了三种 XML 文档类型:Strict、Transitional 以及 Frameset。

Standards (标准)模式(也就是严格呈现模式)用于呈现遵循最新标准的网页,

Quirks(包容)模式(也就是松散呈现模式或者兼容模式)用于呈现为传统浏览器而设计的网页。

7、HTML与XHTML——二者有什么区别

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

b. XHTML 元素必须被关闭。

c. 标签名必须用小写字母。

d. XHTML 文档必须拥有根元素。

参考《XHTML 与 HTML 之间的差异》

8、html5有哪些新特性、移除了那些元素?

a. HTML5 现在已经不是 SGML 的子集,主要是关于图像,位置,存储,多任务等功能的增加。

b. 拖拽释放(Drag and drop) API

c. 语义化更好的内容标签(header,nav,footer,aside,article,section)

d. 音频、视频API(audio,video)

e. 画布(Canvas) API

f. 地理(Geolocation) API

g. 本地离线存储 localStorage 长期存储数据,浏览器关闭后数据不丢失

h. sessionStorage 的数据在页面会话结束时会被清除

i. 表单控件,calendar、date、time、email、url、search

j. 新的技术webworker, websocket等

移除的元素:

a. 纯表现的元素:basefont,big,center, s,strike,tt,u;

b. 对可用性产生负面影响的元素:frame,frameset,noframes;

9、iframe的优缺点?

优点:

a. 解决加载缓慢的第三方内容如图标和广告等的加载问题

b. iframe无刷新文件上传

c. iframe跨域通信

缺点:

a. iframe会阻塞主页面的Onload事件

b. 无法被一些搜索引擎索引到

c. 页面会增加服务器的http请求

d. 会产生很多页面,不容易管理。

参考《iframe的一些记录》

10、Quirks模式是什么?它和Standards模式有什么区别?

在写程序时我们也会经常遇到这样的问题,如何保证原来的接口不变,又提供更强大的功能,尤其是新功能不兼容旧功能时。IE6以前的页面大家都不会去写DTD,所以IE6就假定 如果写了DTD,就意味着这个页面将采用对CSS支持更好的布局,而如果没有,则采用兼容之前的布局方式。这就是Quirks模式(怪癖模式,诡异模式,怪异模式)。

区别:总体会有布局、样式解析和脚本执行三个方面的区别。

a. 盒模型:在W3C标准中,如果设置一个元素的宽度和高度,指的是元素内容的宽度和高度,而在Quirks 模式下,IE的宽度和高度还包含了padding和border。

b. 设置行内元素的高宽:在Standards模式下,给等行内元素设置wdith和height都不会生效,而在quirks模式下,则会生效。

c. 设置百分比的高度:在standards模式下,一个元素的高度是由其包含的内容来决定的,如果父元素没有设置百分比的高度,子元素设置一个百分比的高度是无效的用

d. 设置水平居中:使用margin:0 auto在standards模式下可以使元素水平居中,但在quirks模式下却会失效。

11、请阐述table的缺点

a. 太深的嵌套,比如table>tr>td>h3,会导致搜索引擎读取困难,而且,最直接的损失就是大大增加了冗余代码量。

b. 灵活性差,比如要将tr设置border等属性,是不行的,得通过td

c. 代码臃肿,当在table中套用table的时候,阅读代码会显得异常混乱

d. 混乱的colspan与rowspan,用来布局时,频繁使用他们会造成整个文档顺序混乱。

e. 不够语义

参考《为什么说table表格布局不好?》

12、简述一下src与href的区别

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

src是source的缩写,指向外部资源的位置,指向的内容将会嵌入到文档中当前标签所在位置

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

公众号【传智播客博学谷】回复关键词:前端 PS Java Python 大数据 区块链 测试 PPT JS HTML 简历 领取相关学习资料!