美文网首页
HTML&CSS题目

HTML&CSS题目

作者: 阿喜liang | 来源:发表于2019-02-11 18:28 被阅读2次

    渐进增强和优雅降级?

    渐进增强:针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。
    优雅降级:一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。

    display:none和visibility:hidden的区别?

    • display:none 隐藏对应的元素,在文档布局中不再给他分配空间,它各边的元素会合拢,就当他从来不存在。
    • visibility:hidden 隐藏对应的元素,但是在文档布局中仍保留原来的空间。

    css中link和@import 的区别是?

    • link属于HTML标签,而@import是css提供的;
    • 页面被加载时link会同时被加载,而@import被引用的css会等到引用他的css文件被加载完再加载;
    • import只在IE5以上才能识别,而link是HTML标签,无兼容问题;
    • link方式的样式的权重高于@import的权重。

    css选择符有哪些?哪些属性可以继承?优先级算法如何计算?css3新增伪类有哪些?

    1.id选择器(# myid)
    2.类选择器(.myclassname)
    3.标签选择器(div,h1,p)
    4.相邻选择器(h1 + p)
    5.子选择器(ul > li)
    6.后代选择器(li a)
    7.通配符选择器(*)
    8.属性选择器(a【rel =“external”】)
    9.伪类选择器(a:hover,li:nth-child)

    优先级为:

    !important > id >class > tag
    important比内联优先级高,但内联比id要高

    css3新增伪类举例:
    • p:first-of-type选择属于其父元素的首个<p>元素的每个<p>元素。
    • p:last-of-type 选择属于其父元素的最后<p>元素的每个<p>元素。
    • p:only-of-type 选择属于其父元素的唯一的<p>元素的每个<p>元素。
    • p:only-child 选择属于其父元素的唯一子元素的每个<p>元素。
    • p:nth-child(2)选择属于其父元素的第二个子元素的每个<p>元素。
    • :enabled :disabled 控制表单控件的禁用状态。
    • :checked 单选框或复选框被选中。
    css3有哪些新特性?
    • css3实现圆角(border-radius),阴影(box-shadow)
    • 对文字加特效(text-shadow),线性渐变(gradient),旋转(transform)
      transform:rotate(9deg) scale(0.85,0.90) translate(0px, -30px) skew(-9deg,0deg);//旋转,缩放,定位,倾斜
    • 增加了更多的css选择器 多背景 rgba
    • 媒体查询,多栏布局
    • border-image

    css3中新增了一种盒模型计算方式:box-sizing。盒模型默认的值是content-box,新增padding-box和border-box

    对BFC规范对理解?

    BFC,块级格式上下文,一个创建了新的BFC的盒子是独立布局的,盒子里面的子元素的样式不会影响到外面的元素。在同一个BFC中的两个毗邻的块级盒在垂直方向(和布局方向有关系)的margin会发生折叠。

    说说你对语义化的理解?

    1.去掉或者丢失样式的时候能够让页面呈现出清晰的结构
    2.有利于SEO:和搜索引擎建立良好沟通,有助于爬虫抓取更多的有效信息:爬虫依赖于标签来确定上下文和各个关键字的权重;
    3.方便其他设备解析(如屏幕阅读器、盲人阅读器、移动设备)以意义的方式来渲染页面;
    4.便于团队开发和维护,语义化更具可读性,遵循w3c标准的团队都遵循这个标准,可以减少差异化。

    常见兼容性问题?

    • png24位的图片在ie6浏览器上出现背景,解决方案是做成png8,也可以引用一段脚本处理
    • 浏览器默认的margin和padding不同。解决方案是加一个全局*{margin:0;padding:0}来统一
    • IE6双边距bug:块属性标签float后,又有横行的margin情况下,在ie6显示margin比设置的大,解决方案是在float的标签样式控制中加入_display:inline;将其转化位行内属性。

    解释下浮动和它的工作原理?清除浮动的技巧?

    浮动元素脱离文档流,不占据空间。浮动元素碰到包含它的边框或者浮动元素的边框停留。
    1.使用空标签清除浮动
    这种方法是在所有浮动标签后年添加一个空标签 定义css clear:both,弊端就是增加来无意义的标签。
    2.使用overflow
    给包含浮动元素的父标签添加css属性 overflow为hidden或auto。
    3.浮动外部元素
    4.使用after伪元素

    #parent:after{
      content:"";
      height:0;
      visibility:hidden;
      display:block;
      clear:both;
    }
    

    谈谈浮动和清除浮动?

    浮动的框可以向左或向右移动,直到他的外边缘碰到包含框或另一个浮动框的边框为止,由于浮动框不在文档的普通流中,所以文档的普通流的块框表现的就像浮动框不存在一样,浮动的块框会漂浮在文档普通流的块框上。

    浮动元素引起的问题和解决方法?

    浮动元素引起的问题:
    1.父元素的高度无法被撑开,影响与父元素同级的元素
    2.与浮动元素同级的非浮动元素(内联元素)会跟随其后
    3.若非第一个元素浮动,则该元素之前的元素也需要浮动,否则会影响页面的结构

    html5有哪些新特性、移除了哪些元素?如何处理html5新标签的浏览器兼容问题?如何区分HTML和HTML5?

    • HTML5 现在已经不是SGML的子集,主要是关于图像,位置,存储,多任务等功能等增加。
    • 拖拽释放(Drag and drop) API
    • 语义化更好等内容标签(header,nav,footer,阿肆的,article,section)
    • 音频、视频API(audio,video)
    • 画布(Canvas)API
    • 地理(Geolocation)API
    • 本地离线存储 localStorage 长期存储数据,浏览器关闭后数据不丢失;sessionStorage的数据在浏览器关闭后自动删除
    • 表单控件,calendar、date、time、email、URL、search
    • 新的技术webworker,websocket,Geolocation
    移除的元素
    • 纯表现的元素:basefont,big,center,font,s,strike,tt,u;
    • 对可用性产生负面影响的元素:frame,frameset,noframes;
    支持HTML5新标签:
    IE8/IE7/IE6支持通过document.createElement方法产生的标签,
    
    可以利用这一特性让这些浏览器支持HTML5新标签,
    
    当然最好的方式是直接使用成熟的框架、使用最多的是html5shim框架
    
       <!--[if lt IE 9]>
    
       <script> src="http://html5shim.googlecode.com/svn/trunk/html5.js"</script>
    
       <![endif]-->
    
    如何区分: DOCTYPE声明\新增的结构元素\功能元素
    

    相关文章

      网友评论

          本文标题:HTML&CSS题目

          本文链接:https://www.haomeiwen.com/subject/kztpjqtx.html