最新范文 方案 计划 总结 报告 体会 事迹 讲话 倡议书 反思 制度 入党

前端开发经典问题总结

日期:2020-04-10  类别:最新范文  编辑:一流范文网  【下载本文Word版

前端开发经典问题总结 本文关键词:经典,开发

前端开发经典问题总结 本文简介:1、text-shadow:2px2px2px#f00;text-shadow(文字的影子){x轴(向右为正)y轴(向下为正晕(模糊宽度没有负值)#ff00(影子颜色)}浏览器兼容:Firefox,Opera,Chrome,Safaribox-shadow:(盒子的影子){x轴(向右为正)y轴(向下

前端开发经典问题总结 本文内容:

1、text-shadow:2px

2px

2px

#f00;

text-shadow(文字的影子){x轴(向右为正)

y轴(向下为正

晕(模糊宽度没有负值)

#ff00(影子颜色)}

浏览器兼容:Firefox,Opera,Chrome,Safari

box-shadow:

(盒子的影子){x轴(向右为正)

y轴(向下为正

晕(模糊宽度没有负值)

#ff00(影子颜色)

inset(内部的效果)}

可以只写x,y,color

inset;另一种x,y,blur,spread,color,inset;

不可以x,y,blur/spread,color,inset

2、border-radius(圆角):50px;=={border-top-left-radius:50px;border-top-right-radius:50px;border-bottom-left-radius:50px;border-bottom-right-radius:50px;}

浏览器兼容:IE9,Firefox

4+,Chrome,Safari

5+,Opera

body设置宽度对背景图片没影响

body{

margin:0

auto;

width:960px;

color:#352;

font:14px/20px

“微软雅黑“;

background:#352

url(

/images/bg.jpg

)

fixed

center

no-repeat;}

body>header{font-size:18px;}

body下的子header

not孙子例子

这其中第二个header不受控制

可编辑列表

one

two

three

对于未定义长宽的块级元素,内含浮动的块级元素,若要使其有独占一行的效果可添加display:inline-block属性

Placeholder

中的占位符(仅在支持html5的浏览器下有效)

用法:,作用:类似于提示语在输入框中。

Animation动画

Appearance改变(比如div)为其他样式支持火狐/谷歌/苹果

Appearance:normal/icon/window/button/menu/field

针对CSS3渐变的记录

针对手机webkit内核的浏览器不识别此写法:background-image:

-webkit-linear-gradient(top,#759AE9

0%,#376FE0

50%,#1A5AD9

50%,#2463DE

100%);

识别写法如下:background-image:

-webkit-gradient(linear,left

top,left

bottom,color-stop(0%,#759AE9),color-stop(50%,#376FE0),color-stop(50%,#1A5AD9),color-stop(100%,#2463DE));

针对CSS3

box-shadow属性不仅支持单定义的属性控制如

box-shadow:x

y

spread

blur

color

inset

还支持box-shadow:inset

x

y

spread

blur

color,x

y

spread

blur

color,等

清除浮动

第一种;

::overflow:

hidden;

_zoom:

1;合起来可以清除浮动

第二种;.clear{zoom:1;}.clear:after{content:“/20“;display:block;clear:both;}(

主要为了兼容此div的背景、margin、padding值在各个浏览器下一致;

此div没有背景、margin、padding值,只用clear:both就行了

解读浮动闭合最佳方案:clearfix

分享到:更多6

2011-05-16

分类:HTML/CSS

37人评论13,640次浏览

之前给大家介绍两种浮动闭合的办法CSS清除浮动

万能float闭合,得知很多同学都在使用下面的骨灰级解决办法:

.clear{clear:both;height:0;overflow:hidden;}

上诉办法是在需要清除浮动的地方加个div.clear或者br.clear,我们知道这样能解决基本清浮动问题。

但是这种方法的最大缺陷就是改变了html结构,虽然只是加个div。

最优浮动闭合方案(这是我们推荐的):

.clearfix:after{content:“.“;display:block;height:0;clear:both;visibility:hidden}

.clearfix{*+height:1%;}

用法很简单,在浮动元素的父云素上添加class=”demo

clearfix”。

你会发现这个办法也有个弊端,但的确是小问题。改变css写法就ok了:

.demo:after,.demo2:after{content:“.“;display:block;height:0;clear:both;visibility:hidden}

.demo,.demo2{*+height:1%;}

以上写法就避免了改变html结构,直接用css解决了。

很拉轰的浮动闭合办法:

.clearfix{overflow:auto;_height:1%}

这种办法是我看国外的一篇文章得到的方案,测试了,百试不爽,真的很简单,很给力。喜欢的同学也可以试试这个办法。

这种方法是端友radom提供的,测试通过:

.clearfix{overflow:hidden;_zoom:1;}

感谢radom提供的这种方法!!

js笔记:

1、js优化减少请求数量(合并文件,当然也得考虑文件的大小,)

2、js代码性能,尽量使用变量来保存dom的遍历值

3、HTTP规范,浏览器每次从同一个域名中最多只能同时下载两个文件。下载脚本期间,浏览器不会下载其他任何文件,即使是来自不同域名的文件也不会下载,所有其他资源都要等脚本加载完毕后才能下载。

4、与DOM脚本编程工作有关的问题不外乎平稳退化、向后兼容、分离Javascript这。这些问题的解决方式和解决程度影响着网页的可用性和可访问性。

5、语义化--易于阅读、有利于SEO

解决IE6不支持最小高度

height:auto

!important;

height:200px;

/*假定最低高度是200px*/

min-height:200px;

内部div自动撑开外部div

的问题

若内部div有浮动你是无法自动撑开外部的div滴,解决办法清除浮动了

此上传按钮各个浏览器厂家兼容性完全不同,谷歌,苹果一类,最好控制,IE,火狐完全扯淡不支持对样式进行控制

扯淡的兼容性哇

.class{

position:relative;

top:-39px;

right:-200px;通用right:20px;IE7

right:20px/9;IE8

_right:0px;

IE6

height:39px;

width:440px;

filter:alpha(opacity:0);opacity:0;

}

断行变形的问题

每天星期一星期二星期三星期四星期五星期六星期日

如果此行中有人为换行,这会引起样式变形,浏览器解读为空格

Css优先级问题

针对样式优先级情况,内部样式大于继承,继承大于id,id大于class

P

span{color:#ff0000;}

#color{#000;}

.color{#fff;}如上,优先级逐级下降

jQuery的空格问题

var

$demo=$(‘.test

:hidden’);

有空格的含义:选中类test下隐藏的元素

var

$demo=$(‘.test:hidden’);

无空格的含义:选中类名为test的隐藏的元素

绝对定位,相对定位

Position:absolute绝对定位,默认情况下其父元素对象是浏览器的左上角,若父元素也是绝对定位,则对象是父元素

Position:relative相对定位,针对父元素定位

插入节点方法

First---append()$(“p”).append(“hello”);

example:I

say

:hello

appendTo()$(“hello”).appendTo(“p”);

I

want

say

hello

针对li:first-child

li:last-child这种伪类,ie他nia的不支持

Focus,点击输入框,这种特效,:focus

{outline:1px

solid

#ff0000;}可以设置;

$(“element”).css{“height”}获取对象所设置的高度

$(“element”).height();获取对象的实际高度

$(“element”).width(“100px”)设置宽度

text-indent:-999px;作用:显示图片效果,内含文字,为了便于SEO的抓取,隐藏掉文字

JS变量定义

Js变量定义不可使用”-“这个符号例如:var

page-count=1;这样是失效的,在css里可以.page-count定义

Js反义字符

/r回车/n换行,一般同时在一起使用”/r/n”

Select

属性multiple=”multiple”,如果不加这个属性,默认只可以选一个

jQuery中对象操作“this”的对象转换问题

$(

tbody>tr

).click(function(){

$(this)

.addClass(

selected

)

.siblings().removeClass(

selected

)

.end()

.find(

:radio

).attr(

checked,true);

})

addClass时仍是默认对象,当执行到siblings这个方法时this已经是原对象的兄弟们了(siblings()),因此要结束这个siblings的返回到原对象

jQuery默认click事件

姓名性别暂住地

前台设计组

张山男浙江宁波

李四女浙江杭州

前台开发组

王五男湖南长沙

找六男浙江温州

后台开发组

Rain男浙江杭州

MAXMAN女浙江杭州

$(function(){

$(

tr.parent

).click(function(){

//

获取所谓的父行

$(this)

.toggleClass(“selected“)

//

添加/删除高亮

.siblings(

.child_

+this.id).toggle();

//

隐藏/显示所谓的子行

}).click();

})

css

关于“浮动边距加倍“及其解决方法

css

关于“浮动边距加倍“及其解决方法-------解决方案是在这个div里面加上display:inline;

写div代码的时候,经常发现明明宽度算得很准确,但是莫明其妙的会和计划的布局不太一样-

-|||

开始以为自己代码写的有问题,拼命找bug也一无所获,最后可能会稍微修改样式来达到想要的效果,但终究也是外道昨晚刨根问底了一次.我靠原来是IE的问题-_,-

今天跟半半唠叨起这件事,还说要加入反IE的行列来着.为啥别的都没问题就IE有问题嘛-x-

浮动边距加倍错误(The

IE

Doubled

Float-Margin

Bug

)

如果某条边与浮动方向同向,则向该边上的浮动框应用边距时,边距会增加一倍。此错误只影响一次或多次浮动的某行中的第一次浮动。

#ax{

float:left;-----------------------------设定了左浮动

width:500px;

height:100px;

}

#bx

{

float:

left;

width:

150px;

height:

50px;

margin:

0

0

0

10px;--------------设定了左边距10px

}

//在IE中导致浮动边距加倍,10px会变成20px.在不知道的情况下,以前多半会选择减少div宽度,觉得是margin和宽度之间出了问题

解决方法:在margin后面跟一句

display:inline;

就可以了.但是我翻了半天也没有翻到原理,只是说,在这样的情况下,用这样一个声明,就可以阻止IE的边距翻倍,而且并没有任何inline的效果,没有副作用

这个bug实在是很常见=

=据说以前被认为是无法改良的IE的bug.现在虽然IE还是有这bug,但聪明的人们找到了对付它的方法

=================================

问题1:

以DW编辑器为例,在页面做完后,点“文件〉检查页〉浏览器兼容性”,检查你所做的页面在各个浏览器中是否显示正常,如果出现以下问题:

“浮动边距加倍错误”

“如果某条边与浮动方向同向,则向该边上的浮动框应用边距时,边距会增加一倍。此错误只影响一次或多次浮动的某行中的第一次浮动。

margin加倍的问题

设置为float的div在ie7下显示正常但是在ie6下设置的margin会加倍。这是一个ie6都存在的bug。解决方案是在这个div里面加上display:inline;

针对部分IE,浏览器解析样式表错误问题,例如,一个写法完全正确的样式表及页面,表现却不正常,这极有可能是样式表或页面中的汉语注释引起的

针对继承问题,看例子

针对这种标签的写法,一定要注意对最外ul下的li的定义,如果外面li和内部li都要有高度,宽度的定义一定要控制继承问题,一种替换内部标签(替换红色标签,找其他标签代写)

firefox下

type=“file“的size是多大[原]

firefox对type=“file“的的width定义目前是不支持的,但是FF支持size属性,可以给size设置一个值,来控制上传框的大小。

但是这个size值怎么设置,size=“10“是多宽,默认值又是多少,不能光凭感觉去设置。

用脚本来查看下:

$(function()

{

var

fileArray

=

[];

var

i

=

0;

while

(i

<

100)

{

fileArray.push(i

+

“:“);

i++;

}

document.write(fileArray.join(““));

$(“:file“).each(function()

{

$(this).after(““+

$(this).width()

+

““)

});

});

在火狐下得到这样的结果:

发现了一定的规律,默认为208像素,size=“1“时为85像素,每个size之间相差6.5个像素的宽度,所以我们可以动态的设定size的值,如:

if

($.browser.mozilla)

{

$(this).attr(“size“,1

+

(options.WrapWidth

-

85)

/

6.5)

}

javascript引用外部文件优势:

可维护性好----遍历不同的HTML页面的JavaScript会造成维护问题

可缓存―――浏览器能够根据具体的设置缓存链接的所有外部JavaScript文件

可适应未来―――

ECMAScript区分大小写

第一个字符必须是一个字母、下划线或美元符号

其他字符可以是字母、下划线、美元符号或数字

只要意在保存对象的变量还没有真正保存对象,就应该明确让变量保存null值

boolean类型的值是区分大小写的,True不等于true,True只是一个标示符

科学计数法:18000=1.8e4;0.0000005=5e-7

浮点数值计算不准确

isFine()函数验证数值是否在规定范围内。

NaN―――Not

Number,函数isNaN("blue")参数blue不是number类型会返回true

isNaN()函数验证参数能不能够转换成数值类型。

有三个函数可以把非数值转换为数值:Number();p·arseInt();parseFloat();

设置table的难看的自带的边框问题:属性

border-collapse:collapse

    以上《前端开发经典问题总结》范文由一流范文网精心整理,如果您觉得有用,请收藏及关注我们,或向其它人分享我们。转载请注明出处 »一流范文网»最新范文»前端开发经典问题总结
‖大家正在看...
设为首页 - 加入收藏 - 关于范文吧 - 返回顶部 - 手机版
Copyright © 一流范文网 如对《前端开发经典问题总结》有疑问请及时反馈。All Rights Reserved