细节1

1.Chrome中文界面下会将小于12px的字体默认显示为12px,解决方法:在CSS中加入-webkit-text-size-adjust:none;
2.link可以加载除CSS以外的其他文档,@import只能加载CSS
3.IE下,可以使用普通方法获取自定义属性,也可以使用getAttribute()方法获得自定义属性,
在FireFox下只能使用getAttribute()获得自定义属性,解决方法,统一用getAttribute()方法。
4.超链接在被点击访问过以后就不显示了,不在具有hover和active属性,
这是CSS属性顺序排列错误,争正确的排列顺序为:link-visited-hover-active
5.支持HTML5的新标签:
IE6/7/8下可以通过document.createElement方法产生新的标签,利用这个方法让浏览器支持HTML5的新标签。
6.iframe缺点:
iframe会阻塞主页面的onload事件
iframe会影响页面的并行加载(因为iframe和主页面共享一个连接池,而浏览器对相同域的连接有限制)。
解决方法:通过javascript动态的为iframe添加src属性,可以绕开上面两个缺点。
7.盒模型包括IE盒模型和W3C标准盒模型,IE盒模型中content包括了padding和border
盒模型:content、padding、border、margin
8.可继承的样式:font-size,color,font-family
不可继承的样式:marging,padding,border,width,height
优先级:!important>id>class>标签
!important比内联样式权重高
9.内联元素的高度宽度都是不可以设置的,其宽度就是自身文字或者图片的宽度
10. for(var i in foo) {
if (foo.hasOwnProperty(i)) {
console.log(i);
str=str+i;
}
} 11.删除属性的唯一方法是使用 delete 操作符;
设置属性为 undefined 或者 null 并不能真正的删除属性, 而仅仅是移除了属性和值的关联。
var obj = {
bar: 1,
foo: 2,
baz: 3
};
obj.bar = undefined;
obj.foo = null;
delete obj.baz; 12.JavaScript 中所有变量都可以当作对象使用,除了两个例外 null 和 undefined 。
13.有两种方式来访问对象的属性,点操作符或者中括号操作符。
14.变量声明:变量的声明只有一种方式,那就是用var关键字声明,
直接赋值不是一种声明方式。这仅仅是在全局对象上创建了新的属性(而不是变量)。
变量不能删除(delete),属性可以删除。
在“eval”的上下文中,变量是可以删除的: 15.( function(){…} )()和( function (){…} () )是两种javascript立即执行函数的常见写法,
()、!、+、-、=等运算符,都将函数声明转换成函数表达式,
消除了javascript引擎识别函数表达式和函数声明的歧义,
告诉javascript引擎这是一个函数表达式,不是函数声明,
可以在后面加括号,并立即执行函数的代码。

细节2

1.http://ftp.mozilla.org/pub/firefox/releases/
2.
// 12.从url中获取参数值
function getQueryString(name) {
var search = location.search.substring(1),
reg = new RegExp("(^|&)" + name + "=([^&]*(&|$))", "i"),
r = search.match(reg);
if (r != null) {
return r[2];
}
return null;
}
console.log(getQueryString('MatchID'));
3.Object作为一个机器可以看做是有由Function制造出来的,
而Function作为一个对象可以看做是由Object制造出来的。
这就是JavaScript世界的“鸡生蛋,蛋生鸡”问题。那么到底是谁生了谁呢?Whatever!
4.数组有 indexOf 这个方法(严格等于(===),而 字符串的indexOf 方法是 等于(==))。
5.arrayObject.splice(index,howmany,item1,.....,itemX),
splice() 方法可删除从 index 处开始的零个或多个元素,
并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
6.:将父容器设置成 table,需要竖直居中的元素设置为 table-cell,
然后就可以使用 vertical-align 属性来居中了
7.使用绝对定位的方法,并借助 margin 可以为负值的特性,实现绝对定位居中:
* 已知元素高度为 100px (也可以是百分比,如 80%)*/
height: 100px; /* 先使用绝对定位,将元素的上边界置于竖直的中间*/
position: absolute;
top: 50%; /* 再使用margin-top,将元素向上移动自身高度的一半*/
margin-top: -50px; 8.块级元素高度不固定
/* 先将元素的上边界置于竖直的中间*/
position: relative;
top: 50%; /* 再使用 translateY,将元素向上移动自身高度的一半*/
transform: translateY(-50%);
9.
function A(){
this.name='lala';
}
var a=new A();
console.log(A.prototype,a.prototype);
console.log(A.__proto__,a.__proto__);
10.
substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。
substring() 方法用于提取字符串中介于两个指定下标之间的字符。 stringObject.substring(start,stop)
stop
可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。
如果省略该参数,那么返回的子串会一直到字符串的结尾。 11.javascript:navigator.userAgent
12.计算代码运行时间
var times = 15000;
// code1 每次过桥+重排+重绘
console.time(1);
for(var i = 0; i < times; i++) {
document.getElementById('myDiv1').innerHTML += 'a';
}
console.timeEnd(1); // code2 只过桥
console.time(2);
var str = '';
for(var i = 0; i < times; i++) {
var tmp = document.getElementById('myDiv2').innerHTML;
str += 'a';
}
document.getElementById('myDiv2').innerHTML = str;
console.timeEnd(2);

细节3

1.常用元素属性(offsetHeight属性需要返回最新的布局信息,

因此浏览器不得不执行渲染队列中的“待处理变化”
并触发重排以返回正确的值(即使队列中改变的样式属性和想要获取的属性值并没有什么关系),)
offsetTop, offsetLeft, offsetWidth, offsetHeight
scrollTop, scrollLeft, scrollWidth, scrollHeight
clientTop, clientLeft, clientWidth, clientHeight
优化重排
var ele = document.getElementById('myDiv');
// 1. 重写style
ele.style.cssText = 'border-left: 1px; border-right: 2px; padding: 5px;';
// 2. add style
ele.style.cssText += 'border-;eft: 1px;'
// 3. use class
ele.className = 'active';
2."四舍六入五成双"含义: 对于位数很多的近似数,当有效位数确定后,其后面多余的数字应该舍去,只保留有效数字最末一位,
这种修约(舍入)规则是“四舍六入五成双”,
也即“4舍6入5凑偶”这里“四”是指≤4 时舍去,"六"是指≥6时进上,
"五"指的是根据5后面的数字来定
当5后有数时,舍5入1;
当5后无有效数字时,需要分两种情况来讲
:①5前为奇数,舍5入1;②5前为偶数,舍5不进。(0是偶数)

html css js 细节的更多相关文章

  1. css,js工具篇

    4. web前端开发分享-css,js工具篇   web前端开发乃及其它的相关开发,推荐sublime text, webstorm(jetbrains公司系列产品)这两个的原因在于,有个技术叫emm ...

  2. 前端工程师面试问题归纳(一、问答类html/css/js基础)

    一.参考资源 1.前端面试题及答案整理(一) 2.2017年前端面试题整理汇总100题 3.2018最新Web前端经典面试试题及答案 4.[javascript常见面试题]常见前端面试题及答案 5.W ...

  3. css+js实现自动伸缩导航栏

    用css+js实现自动伸缩导航栏 需要达到的效果: 默认首页选中样式 设置鼠标滑过效果:颜色变化(#f60),宽度变化,字体变化 所涉及的知识点: 布局:float css: 元素状态切换(displ ...

  4. #1使用html+css+js制作网站教程 准备

    #1使用html+css+js制作网站教程 准备 本系列链接 0 准备 0.1 IDE编辑软件 0.2 浏览器 0.3 基础概念 0.3.1 html 0.3.2 css 0.3.3 js 0.4 文 ...

  5. CSS & JS 制作滚动幻灯片

    ==================纯CSS方式==================== <!DOCTYPE html> <html> <head> <met ...

  6. 【转】Maven Jetty 插件的问题(css/js等目录死锁)的解决

    Maven Jetty 插件的问题(css/js等目录死锁,不能自动刷新)的解决:   1. 打开下面的目录:C:\Users\用户名\.m2\repository\org\eclipse\jetty ...

  7. Css Js Loader For Zencart

    Css Js Loader 描述:这个插件很早就出来了,可能知道人非常少 这个插件的功能是整合所有的网站的CSS和JS内容到一个文件里边. 因为CSS和JS文件到了一个文件,加快了程序的运行 在配合其 ...

  8. 购物车数字加减按钮HTML+CSS+JS(有需要嫌麻烦的小伙伴拿走不谢)

    之前在写详情页的时候,如下图 因为自己嫌麻烦,就去看其他网站是怎么写的,想直接拿来用,后来看来看去觉得写得很麻烦,于是最后还是决定自己写,附上HTML+CSS+JS代码,一条龙一站式贴心服务2333 ...

  9. vs合并压缩css,js插件——Bundler & Minifier

    之前做了一个大转盘的抽奖活动,因为比较火,部分用户反馈看不到页面的情况,我怀疑js加载请求过慢导致,所以今天针对之前的一个页面进行调试优化. 首先想到的是对页面的js和css进行压缩优化,百度了下vs ...

随机推荐

  1. ECMAScript基础

    概念: 1):区分大小写 2):变量是弱类型的. 3):每行结尾的分号可有可无 4):注释与Java,C和PHP语言的注释相同 5):括号表明代码块 原始值:是存储在栈中的简单数据段,也就是说他们的值 ...

  2. odoo Q-web

    文档链接于:https://www.odoo.com/documentation/8.0/reference/qweb.html QWeb is the primary templating engi ...

  3. CS1704问题汇总

    “/”应用程序中的服务器错误. 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误消息: CS1704: 已经导入了具有相同的 ...

  4. Android Studio--》Gradle Scripts配置说明

    什么是Gradle? Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,取而代之的是一种基于Groovy的内部领域特定(DSL)语言. 安装 ...

  5. Cocos 2dx项目lua调用OC出现卡死但不闪退的坑

    最近新上线的一个游戏,发现线上游戏有部分功能在点击的时候出现了没有反应的情况.通过调试源码,发现是原生OC的代码出现了崩溃,但是比较奇怪的是线上的Bugly没有任何记录,这个功能属于高频高能,而且又是 ...

  6. 小程序 切换到tabBar页面不刷新问题

    小程序跳转的几种方式有wx.navigateTo,wx.redirectTo,wx.reLaunch,wx.switchTab等.下面我们重点研究切换到tabBar的两种方式. wx.switchTa ...

  7. Creator仿超级玛丽小游戏源码分享

    Creator仿超级玛丽小游戏源码分享 之前用Cocos Creator 做的一款仿超级玛丽的游戏,使用的版本为14.2 ,可以直接打包为APK,现在毕设已经完成,游戏分享出来,大家一起学习进步.特别 ...

  8. python实现获取身份证号码的方法

    记录瞬间 1.号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码.2.地址码 表示编码 ...

  9. linux下git服务器安装

    git服务器配置http://www.cnblogs.com/dee0912/p/5815267.html git教程https://www.liaoxuefeng.com/wiki/00137395 ...

  10. 去掉vim的BELL提示音

    title: date: 2017-11-09 15:07:08 tags: vim categories: 开发工具 --- 在vi/vim中使用 :set noeb 意思是noerrorbells ...