黑马程序员-CSS+JS简单总结

 

 

---------------------- android培训java培训、期待与您交流! ----------------------

CSS介绍

CSS是层叠样式表(Cascading Style Sheets)用来定义网页的现实效果。可以解决html代码对样式定义的重复,提高了后期样式代码的可维护性,并增强了网页的现实效果功能。简单一句话:CSS将网页内容和显示样式进行分离,提高了显示功能。

那么CSS和Html是如何在网页代码中相结合的呢?

通过四种方式

1. style属性方式:

利用标签中style属性来改变每个标签的显示样式。

例:

<p style="background-color:#FF0000; color:#FFFFFF">

p标签段落内容。

</p>

该方式比较灵活,但是对于多个相同标签的同一样式定义比较麻烦,适合局部修改。

2. style标签方式:(内嵌方式)

在head标签中加入style标签,对多个标签进行统一修改。

<head>

<style type=”text/css”>

p { color:#FF0000;}

</style>

</head>

该方式可以对单个页面的样式进行统一设置,但对于局部不够灵活。

3. 导入方式:

前提是已经存在一个定义好的CSS文件。网页的一部分样式需要用到,那么就用到这种方式。

例:
<style type="text/css">

@import url(css_3.css);

div { color:#FF0000;}

</style>

注:url括号后面必须要用分号结束。如果导入进来的样式与本页面定义的样式重复,以本页定义样式为准。

4. 链接方式:

通过head标签中link标签来实现,前提也是先要有一个已定好的CSS文件。

例:

<link rel="stylesheet" type="text/css" href="css_3.css" media="screen" />

注:可以通过多个link标签链接进来多个CSS文件。重复样式以最后链接进来的CSS样式为准。

5. 样式优先级:

由上到下,由外到内。优先级由低到高。

6. 总结CSS代码格式

选择器名称 { 属性名:属性值;属性名:属性值;…….}

属性与属性之间用 分号 隔开

属性与属性值直接按用 冒号 连接

如果一个属性有多个值的话,那么多个值用 空格 隔开。

7. 选择器:

就是指定CSS要作用的标签,那个标签的名称就是选择器。意为:选择哪个容器。

选择器共有三种:

a) html标签名选择器。使用的就是html的标签名。

b) class选择器。其实使用的标签中的class属性。

c) id选择器。其实使用的是标签的中的id属性。

每一个标签都定义了class属性和id属性。用于对标签进行标识,方便对标签进行操作。

在定义的中,多个标签的class属性值可以相同,而id值要唯一,因为JavaScript中经常用。

8. class选择器:

在标签中定义class属性并赋值。通过 标签名.class值 对该标签进行样式设置。

例:

相同标签设置不同样式的时候,用class进行区分。

p.pclass_1 {color:#FF0000;}

p.pclass_2 {color:#0000FF;}

<p class=”pclass_1”>P标签样式</p>

<p class=”pclass_2”>P标签样式</p>

不同标签进行相同设置的时候,用class进行统一定义。

.classname {color:#00FF00;}

<p class=”classname”>P标签样式</p>

<div class=”classname”>DIV标签样式</div>

9. id选择器:

class选择器类似,但格式不同,选择器的名称为:#id值。

例:

#pid { color:#0000FF;}

<p id=”pid”>P标签样式</p>

注:多个标签同样可以定义相同的id值,但是对于JavaScript对标签元素的获取就会出错。所以形成习惯,确保id值的唯一性对于以后的数据库设计也很有好处。

10. 扩展选择器:

a) 关联选择器

标签是可以嵌套的,要让相同标签中的不同标签显示不同样式,就可以用此选择器。

例:

p { color:#00FF00;}

p b { color:#FF000;}

<p>P标签<b>刘德华</b>段落样式</p>

<p>P标签段落</p>

b) 组合选择器

对多个不同选择器进行相同样式设置的时候应用此选择器。

p,div { color:#FF0000;}

<p>P标签显示段落。</p>

<div>DIV标签显示段落</div>

注:多个不同选择器要用逗号分隔开。

c) 伪元素选择器

其实就在html中预先定义好的一些选择器。称为伪元素。是因为CSS的术语。

格式:标签名:伪元素。类名 标签名。类名:伪元素。都可以。

a:link 超链接未点击状态。

a:visited 被访问后的状态。

a:hover 光标移到超链接上的状态(未点击)。

a:active 点击超链接时的状态。

使用顺序 L – V – H - A

p:first-line 段落的第一行文本。

p:first-letter 段落中的第一个字母。

:focus 具有焦点的元素。IE6浏览器不支持,在FireFox中可以看到效果。

---------------------- android培训java培训、期待与您交流! ----------------------

Javascript是Netscape公司语言,基于对象和事件驱动。

和java的不同之处:

1,所属公司不一样。java是sun公司,现在是Orcale公司.

2,js是基于对象,java是面向对象。

3,js是由浏览器解释并执行,java是由jvm解释并执行。

4,js是弱类型的语言,java是强类型。

5,js是非严谨的,java是严谨的。

 

javascript运行在客户端。

javascript需要被浏览器所解释执行,就必须要将代码和html相结合。

结合方式是什么样的呢?

1,通过定义<script>标签将js代码存入其中。并指定type属性。方便与浏览器启动指定的解析引擎。

2,也可以通过<script>标签,使用src属性连接一个指定的js文件进来。


 

Javascript的基本语法:

1,变量。

通过var关键字定义变量,该变量可以赋予不同类型的常量。

ar x = 3;

x = "abc";

特殊的常量:undefined

2,语句。

if,switch,while,do while,for.

使用逻辑运算符进行布尔表达式连接的时候,需要是短路与和短路或。 && ||

因为在js中,非0即为true,0为false。非null为true,null为false。


 

js特有的语句:

with(对象){}:可以确定对象所使用的范围。在范围内,可以直接使用指定对象的属性和 行为,而不用,对象. 的形式调用。简化了对象的操作。

for(变量 in 对象):可以对对象的属性及行为进行遍历。

3,数组。

对于js的数组特点在于:该数组的长度是可变的,相对与java中的集合。

该数组中可以存放的元素类型是可以不同的 。

定格格式:

var arr = [3,true,"abc"];

var arr = new Array();

var arr = [[3,1,9],[3,4]];

操作形式和java一样。都是通过for进行遍历,同时也使用了指针思想。

4,函数。

通过function关键字定义函数。

a,一般函数。

格式:function 函数名(形式参数...)

{

执行语句;

return 返回值;

}

通常了提供代码复用可以将代码封装成函数。

两个明确:

#,明确该功能实现后的结果。

#,该功能在实现过程中是否有未知内容参与运算。

b,动态函数。

使用的Function对象。

var show = new Function("x","y","return x+y;");

动态函数的特点:可以将参数列表,和方法体作为参数传递。

c,匿名函数。

一般函数的简写形式。

function(){}

匿名函数通常可以用于事件的处理的。

如:window.onload = funciton(){alert('onload over');}


 

在函数使用时需要注意的部分:

function show()

{

return "show run";

}

var method = show();

var method = show;

两句代码都是正确的,

第一句表示的是show方法运行后的结果赋值给method变量。

第二句表示的是将show指向的对象的地址赋值给method。那么method也指向 了该对象。

那么就可以通过method();的形式来调用这个show方法。

--------------------------------------------------------------------------------------------------------------------------------------

js可以通过对象形式将数据进行封装。

首先对对象进行描述,通过函数来完成。

function Person(name,age)

{

this.name = name;

this.age = age;

}

var p = new Person("lisi",30);

alert(p["name"]+".."+p.age);

p.show = function()

{

alert("show run");

}

----------------------------------------------------------------------------------------------------------------------------------

Javascript中的已定义好的一些对象。

1,String,Math,Date,Array,Function

这些对象都有一个属性叫做prototype原型.

prototype可以获取指定的对象引用

可以通过该引用给已有的对象赋予一些新的功能。

那么在使用该对象时,可以直接调用定义好的新功能。

function getMax()

{

var max = 0;

for(var x=1; x<this.length; x++)

{

if(this[x]>this[max])

max = x;

}

return this[max];

}

var arr = [3,4,16,7];

arr.sort();//直接调用Array对象的sort方法对数组进行排序。

那么可不以象调用sort方法一样调用getMax方法呢?

就需要将getMax方法添加到Array对象当中。

Array.prototype.getMax = getMax;

var x = arr.getMax();

alert("max="+x);

var str = "abc";

str.substring(1,2);

str.bold();//<b>str</b>

/*//模拟一下String中fontcolor方法。

function mycolor(color)

{

return "<font color='"+color+"'>"+this+"</font>";

}

String.prototype.color = mycolor;

str.color("red");

*/

 

//给字符串对象定义一个新功能,去掉字符串两端空格。

function trim()

{

var start,end;

start = 0;

end = this.length-1;

while(start<=end && this.charAt(start)==" ")

start++;

while(start<=end && this.charAt(end)==" ")

end--;

return this.substring(start,end+1);

}

String.prototype.trim = trim;

var s = " ab c ";

s = s.trim();

alert("--"+s+"--");//ab c

------------------------------------------------------------------------------------------------------------------------------------

常见的全局方法。

parseInt(numstr,[radix]);//将数字格式的字符串转成整数。如果指定了基数,那numstr,就会按照执行基数进行转换。

var num = parseInt("110",2);//表示“110”这个字符串会按照二进制进行转换。

alert("num="+num);//num = 6;

var x = 6;

alert(x.toString(2));//110.//获取6对应的二进制表现形式。


 


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值