一、CSS 全称及其作用是什么?
答:
1)、Cascading Style Sheets (层叠样式表)
2)、CSS 能够对网页中元素位置的排版进行像素级精确控制。
3)、支持几乎所有的字体字号样式。
4)、拥有对网页对象和模型样式编辑的能力,让页面变得更加精美。

二、怎么导入CSS的文件?怎么使用CSS样式?
答:

//1)、
< link rel=“stylesheet” href=“css/htmlcss.css” />
//2)、

三、表签元素选择器、class选择器、id选择器 的区别?
答:
1)、表签选择器,直接写表签名,对当前页面的所有叫这个名字的表签进行渲染
2)、id 选择器,#加上元素的 id 名,对指定 id 名字的元素进行渲染修饰
3)、class 选择器, .加上class名,对指定class名字的元素进行渲染修饰

#id{
}
.class{
}
div{
}
四、样式就近原则指的是什么?内部中的样式一定比外部引入文件的优先级高吗?css 所有的样式都可以继承吗?
答:
1)、指的是离元素最近的样式会起作用
2)、不一定,要看是否是渲染同一个元素。渲染同一个元素的情况下,
才有优先级的问题
3)、不是 比如 margin、border、padding、background、height 等等之类

五、请画出盒子模型?,并求出宽和高
答:

1)、 padding:设置所有内补丁。padding: 5px 、padding 5px 4px 3px 2px (上右下左)
2)、 padding-(|ltop|right|bottom|left):分别设置上、右、下、左的内补。
3)、margin:设置所有外补丁。margin:5px、padding 5px 4px 3px 2px
4)、 margin-(top|right|bottom|left):分别设置上、右、下、左外补丁

六、link和@import的区别?

答: 两者都是外部引用CSS的方式,但是存在一定的区别: 1)、link 是 XHTML 标签,除了加载 CSS 外,还可以定义 RSS 等其他事务; @import 属于 CSS 范畴,只能加载 CSS 2)、link 引用 CSS 时,在页面载入时同时加载; @import 需要页面网页完全载入以后加载。 3)、link 是 XHTML 标签,无兼容问题; @import 是在 CSS2.1 提出的,低版本的浏览器不支持。 4)、link 支持使用 Javascript 控制 DOM 去改变样式;而 @import 不支持。

七、什么叫优雅降级和渐进增强?
答:
优雅降级:
1、Web站点在所有新式浏览器中都能正常工作,如果用户使用的是老式浏览器,则代码会检查以确认它们是否能正常工作。
2、由于IE独特的盒模型布局问题,针对不同版本的IE的hack实践过优雅降级了,为那些无法支持功能的浏览器增加候选方案,使之在旧式浏览器上以某种形式降级体验却不至于完全失效.
渐进增强:
1、从被所有浏览器支持的基本功能开始,逐步地添加那些只有新式浏览器才支持的功能,向页面增加无害于基础浏览器的额外样式和功能的。当浏览器支持时,它们会自动地呈现出来并发挥作用。

八、浮动元素会引起的问题和解决的办法?
答:
问题:
1、与浮动元素同级的非浮动元素会跟随其后
2、若非第一个元素浮动,则该元素之前的元素也需要浮动,否则会影响页面显示的结构
解决方法:
1、使用CSS中的clear:both;属性来清除元素的浮动可解决问题;

九、性能优化的方法?
答:
1、减少http请求次数:CSS Sprites,JS、CSS源码压缩、图片大小控制合适;
2、前端模板 JS+数据,减少由于HTML标签导致的带宽浪费,前端用变量保存AJAX请求结果,每次操作本地变量,不用请求,减少请求次数
3、用innerHTML代替DOM操作,减少DOM操作次数,优化javascript性能
4、当需要设置的样式很多时设置className而不是直接操作style
5、少用全局变量、缓存DOM节点查找的结果。减少IO读取操作
6、图片预加载,将样式表放在顶部,将脚本放在底部 加上时间戳。

十、为什么要初始化CSS样式?
答:
1、因为浏览器的兼容问题,不同浏览器对有些标签的默认值是不同的,如果没对CSS初始化往往会出现浏览器之间的页面显示差异。
2、当然,初始化样式会对SEO有一定的影响,但鱼和熊掌不可兼得,但力求影响最小的情况下初始化。
*最简单的初始化方法就是: * {padding: 0; margin: 0;} (不建议)

十一、CSS样式表根据所在网页的位置,可分为哪几种样式表?
答:
行内样式表,内嵌样式表,外部样式表

十二、浏览器标准模式和怪异模式之间的区别是什么?
答:
标准模式
浏览器按W3C标准解析执行代码;
怪异模式
浏览器自己的方式解析执行代码,因为不同浏览器解析执行的方式不一样,所以我们称之为怪异模式。
注意:
浏览器解析时到底使用标准模式还是怪异模式,与你网页中的DTD声明直接相关,DTD声明定义了标准文档的类型(标准模式解析)文档类型,会使浏览器使用相应的方式加载网页并显示,忽略DTD声明,将使网页进入怪异模式

十三、内联与块级标签有何区别?
答:
1、Html中的标签默认主要分为两大类型,一类为块级元素,另一类是行内元素,许多人也把行内称为内联,所以叫内联元素。
块级元素:
1、独占一行,默认情况下,其宽度自动填满其父元素宽度
2、可以设置width,height属性
3、可以设置margin和padding属性

< address> 定义地址
< caption> 定义表格标题
< dd> 定义列表中定义条目
< div> 定义文档中的分区或节
< dl> 定义列表
< dt> 定义列表中的项目
< fieldset> 定义一个框架集
< form> 创建表单元素
< h1>< h2>< h3>< h4>< h5>< h6> 标题元素
< hr> 水平线
< legend> 给fieldset元素定义标题
< li> 定义列表项目
< noframes> 为那些不支持框架的浏览器显示文本,放置于frameset标签内
< noscript> 为那些不支持脚本的浏览器显示文本
< ol> 有序列表
< ul> 无序列表
< p> 定义段落
< pre> 定义预格式化文本
< table> 定义表格
< tbody> 定义表格主体
< td> 表格中的标准单元格
< tr> 表格中的行
< tfoot> 表格中的页脚
< th> 定义表头单元格
< thead> 定义表格的表头
行内元素:
1、相邻的行内元素会排列在同一行里,直到一行排不下,才会换行,其宽度随元素的内容而变化
2、行内元素设置width,height属性无效
3、行内元素起边距作用的只有margin-left、margin-right、padding-left、padding-right,其它属性不会起边距效果。

可定义锚以及超链接
表示一个缩写形式
< acronym> 表示只取title中首字母的缩写形式
< b> 字体加粗
< bdo> 可覆盖默认的文本方向
< big> 大号字体加粗
< br> 换行
< cite> 引用进行定义
< code> 定义计算机代码文本
< dfn> 定义一个定义项目
< em> 定义为强调的内容
< i> 斜体文本效果
< img> 向网页中嵌入一张图像
< input> 输入框
< kbd> 定义键盘文本
< label> 为input进行标记/标注
< q> 定义短的引用
< s> 表示不准确不相关,却不应当给予删除的内容
< samp> 定义样本文本
< select> 定义单选或者多选菜单
< small> 呈现小号字体效果
< span> 组合文档中的行内元素
< strong> 语气更强的强调内容
< sub> 定义下标文本
< sup> 定义上标文本
< textarea> 多行文本输入控件
< tt> 打字机或者等宽的文本效果
< var> 定义变量
< input>和< img>都是行内元素,但是它们是可以设置宽和高的。这里就涉及到可替换元素和不可替换元素

十四、隐藏元素的方式有哪些?
答:
1、使用CSS的display:none,不会占有原来的位置
2、使用CSS的visibility:hidden,会占有原来的位置
3、使用HTML5中的新增属性hidden=“hidden”,不会占有原来的位置

十五、页面中使用定位(position)的理解?
答:
使用css布局position非常重要,语法如下:
position:static | relative | absolute | fixed | center | page | sticky
默认值:static,center、page、sticky是CSS3中新增加的值。
1、static
可以认为静态的,默认元素都是静态的定位,对象遵循常规流。此时4个定位偏移属性不会被应用,也就是使用left,right,bottom,top将不会生效。
2、relative
相对定位,对象遵循常规流,并且参照自身在常规流中的位置通过top,right,bottom,left这4个定位偏移属性进行偏移时不会影响常规流中的任何元素。
3、absolute
元素定位参考的是离自身最近的定位祖先元素,要满足两个条件,第一个是自己的祖先元素,可以是父元素也可以是父元素的父元素,一直找,如果没有则选择body为对照对象。第二个条件是要求祖先元素必须定位,通俗说就是position的属性值为非static都行
4、fixed
固定定位,与absolute一致,但偏移定位是以窗口为参考。当出现滚动条时,对象不会随着滚动。
5、center
与absolute一致,但偏移定位是以定位祖先元素的中心点为参考。盒子在其包含容器垂直水平居中。(CSS3)
6、page
与absolute一致。元素在分页媒体或者区域块内,元素的包含块始终是初始包含块,否则取决于每个absolute模式。(CSS3)
7、sticky
对象在常态时遵循常规流。它就像是relative和fixed的合体,当在屏幕中时按常规流排版,当卷动到屏幕外时则表现如fixed。该属性的表现是现实中你见到的吸附效果。(CSS3)

十六、多个元素重叠问题如何解决?
答:
使用z-index属性可以设置元素的层叠顺序
语法:z-index: auto |
取值:
auto: 元素在当前层叠上下文中的层叠级别是0。元素不会创建新的局部层叠上下文,除非它是根元素。
整数: 用整数值来定义堆叠级别。可以为负值。
注意:
检索或设置对象的层叠顺序。
z-index用于确定元素在当前层叠上下文中的层叠级别,并确定该元素是否创建新的局部层叠上下文。
当多个元素层叠在一起时,数字大者将显示在上面。

17 Java面试之css相关推荐

  1. Java面试:数据库,Java,框架,前端技术。应有尽有

    ** Java面试宝典 ** 一. HTML&CSS部分 1.HTML中定义表格的宽度用80px和80%的区别是什么? PX标识像素,%标识整个页面的宽度百分比 2.CSS样式定义优先级顺序是 ...

  2. Java面试宝典(2018版)

    置顶 2018年11月10日 23:49:18 我要取一个响亮的昵称 阅读数:8893 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/chen_28 ...

  3. JAVA面试、笔试题

    @[TOC]目录 JAVA面试.笔试题 @目录 一. CoreJava部分 7 1. java中有哪些基本类型? 7 2. java反射 7 3. 易错,理解题 7 4. Java有几种创建对象的方法 ...

  4. Java面试不通过?这篇文章你看了吗?

    文章目录 一.Java 基础 1.JDK 和 JRE 有什么区别? 2. == 和 equals 的区别是什么? 3.两个对象的 hashCode()相同,则 equals()也一定为 true,对吗 ...

  5. Java面试笔试题大汇总(最全+详细答案)

    声明:有人说, 有些面试题很变态,个人认为其实是因为我们基础不扎实或者没有深入.本篇文章来自一位很资深的前辈对于最近java面试题目所做的总结归纳,有170道题目 ,知识面很广 ,而且这位前辈对于每个 ...

  6. 马士兵java面试八股文及答案

    马士兵java面试八股文及答案 Java面向对象有哪些特征,如何应用 HashMap原理是什么,在jdk1.7和1.8中有什么区别 ArrayList和LinkedList有什么区别 高并发中的集合有 ...

  7. 【BATJ面试必会】JAVA面试到底需要掌握什么?【下】

    [BATJ面试必会]JAVA面试到底需要掌握什么?[下] 非对称加密,对称加密 对称加密(Symmetric Cryptography),又称私钥加密 对称加密是最快速.最简单的一种加密方式,加密(e ...

  8. Java常见面试题 Java面试必看 (一)

    本篇博客是本人收集网上Java相关的资料整理所得,仅供参考. 一.Java基础 1.JDK 和 JRE区别 JDK(Java Development Kit)是针对Java开发员的产品,是整个Java ...

  9. java面试笔试题大汇总

    java面试笔试题大汇总 JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题 ...

最新文章

  1. NLP研究索引神器,3000+代码库,一键查找论文、GitHub库
  2. 用友BQ商业智能设计模式——概述
  3. keras冻结_【连载】深度学习第22讲:搭建一个基于keras的迁移学习花朵识别系统(附数据)...
  4. 先序、中序确定二叉树
  5. 使用 ABAP 读取每个月的月份名称和编号
  6. HDU 1597 find the nth digit (二分查找)
  7. 正能量之项目经理的自我修养
  8. python修改mac地址_python利用_winreg模块制作MAC地址修改工具
  9. 这些Python代码技巧,你肯定还不知道
  10. 接口测试用例设计思路_基于python语言的接口自动化demo小实战
  11. EXCEL 跨列居中
  12. 原生社区交友婚恋视频即时通讯双端APP源码 ONE兔2.0版
  13. asp.net网上零食销售商城系统
  14. java 获取当前时间的时间戳(秒级与毫秒级)
  15. postman全方位讲解(有空看下)
  16. 账号被盗,如何强制下线?
  17. Colorful Slimes( UPC 5594: 二维dp+思维)
  18. 您的Goole帐号已被暂时停用您的帐号违反了“规避系统”政策。
  19. 移动宽带GM220-S光猫桥接
  20. Automated 3-D Retinal Layer Segmentation From SD-OCT Images With Neurosensory Retinal Detachment

热门文章

  1. angularjs2 html转义,详解Angular.js数据绑定时自动转义html标签及内容
  2. linux离线安装docker教程,Linux 离线安装docker的过程
  3. poj3692(二分图最大独立集)
  4. python 字典代码_Python 字典(Dictionary)
  5. ef mysql 插件_EF Core 插件 —— ToSql
  6. leetcode1017
  7. Java进程与线程的区别
  8. protel DXP的类矢量图功能
  9. 把一些11年老博客上的文章转移过来了
  10. cloudera hbase集群简单思路