web stylesheet
HTML <!DOCTYPE> 标签
定义和用法
<!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前。此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。
该标签可声明三种 DTD 类型,分别表示严格版本、过渡版本以及基于框架的 HTML 文档。
<!DOCTYPE html>
<html>
<body>
<p>
JavaScript 能够直接写入 HTML 输出流中:
</p>
<script>
document.write("<h1>This is a heading</h1>");
document.write("<p>This is a paragraph.</p>");
</script>
<p>
您只能在 HTML 输出流中使用 <strong>document.write</strong>。
如果您在文档已加载后使用它(比如在函数中),会覆盖整个文档。
</p>
</body>
</html>
---------------------------------------
HTML <link> 标签
链接一个外部样式表:
<head>
<link rel="stylesheet" type="text/css" href="theme.css" />
</head>
-------------------------------------------
CSS 层叠样式表 (Cascading Style Sheets)
万维网联盟(W3C)
-------------------------------------------
当同一个 HTML 元素被不止一个样式定义时,会使用哪个样式呢?
一般而言,所有的样式会根据下面的规则层叠于一个新的虚拟样式表中,其中数字 4 拥有最高的优先权。
1.浏览器缺省设置
2.外部样式表
3.内部样式表(位于 <head> 标签内部)
4.内联样式(在 HTML 元素内部)
因此,内联样式(在 HTML 元素内部)拥有最高的优先权,这意味着它将优先于以下的样式声明:<head> 标签中的样式声明,外部样式表中的样式声明,或者浏览器中的样式声明(缺省值)。
外部样式表
当样式需要被应用到很多页面的时候,外部样式表将是理想的选择。使用外部样式表,你就可以通过更改一个文件来改变整个站点的外观。
<head>
<link rel="stylesheet" type="text/css" href="mystyle.css">
</head>
内部样式表
当单个文件需要特别样式时,就可以使用内部样式表。你可以在 head 部分通过 <style> 标签定义内部样式表。
<head>
<style type="text/css">
body {background-color: red}
p {margin-left: 20px}
</style>
</head>
内联样式
当特殊的样式需要应用到个别元素时,就可以使用内联样式。 使用内联样式的方法是在相关的标签中使用样式属性。样式属性可以包含任何 CSS 属性。以下实例显示出如何改变段落的颜色和左外边距。
<p style="color: red; margin-left: 20px">
This is a paragraph
</p>
-------------------------------------------
WEB标准:结构(structure) + 表现(Presentation) + 行为(behaviour)
依次可以选择的代表类型为 html CSS javascript
-------------------------------------------
HTML <link> 标签
链接一个外部样式表:
<head>
<link rel="stylesheet" type="text/css" href="theme.css" />
</head>
属性 值 描述
href URL 规定被链接文档的位置。
rel stylesheet 规定当前文档与被链接文档之间的关系。
type MIME_type 规定被链接文档的 MIME 类型。
-------------------------------------------
HTML <meta> 标签
<meta> 元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词。
<meta> 标签位于文档的头部,不包含任何内容。<meta> 标签的属性定义了与文档相关联的名称/值对。
<meta http-equiv="Content-Type"content="text/html; charset=utf-8"/>
http-equiv 属性
http-equiv 属性为名称/值对提供了名称。并指示服务器在发送实际的文档之前先在要传送给浏览器的 MIME 文档头部包含名称/值对。
当服务器向浏览器发送文档时,会先发送许多名称/值对。虽然有些服务器会发送许多这种名称/值对,但是所有服务器都至少要发送一个:content-type:text/html。这将告诉浏览器准备接受一个 HTML 文档。
使用带有 http-equiv 属性的 <meta> 标签时,服务器将把名称/值对添加到发送给浏览器的内容头部。例如,添加:
<meta http-equiv="charset" content="iso-8859-1">
<meta http-equiv="expires" content="31 Dec 2008">
这样发送到浏览器的头部就应该包含:
content-type: text/html
charset:iso-8859-1
expires:31 Dec 2008
当然,只有浏览器可以接受这些附加的头部字段,并能以适当的方式使用它们时,这些字段才有意义。
-------------------------------------------
background: url(../images/header_bg.jpg) repeat-x 0 0;
意思就是背景以X轴(横向)平铺,并且起始平铺的位置是x坐标为0,y坐标为0,就是左上角横向平铺。
repeat-x是横向铺满,就是在#header .nav-box中,图片nav-box-bg.gif会横向重复,知道铺满;
repeat-y是纵向
如果不想重复,no-repeat.
-------------------------------------------
.header {
height: 87px;
background: url(../images/header.jpg) no-repeat;
position: relative;
}
position:absolute这个是绝对定位;
是相对于浏览器的定位。
比如:position:absolute;left:20px;top:80px; 这个容器始终位于距离浏览器左20px,距离浏览器上80px的这个位置。
position:relative是相对定位,是相对于前面的容器定位的。这个时候不能用top left在定位。应该用margin。
比如:<div class="1"></div><div class="2"></div>
当1固定了位置。1的样式float:left;width:100px; height:800px;
2的样式为float:left; position:relative;margin-left:20px;width:50px;
2的位置在1的右边,距离120px
设置此属性值为 absolute 会将对象拖离出正常的文档流绝对定位而不考虑它周围内容的布局。假如其他具有不同 z-index
属性的对象已经占据了给定的位置,他们之间不会相互影响,而会在同一位置层叠。此时对象不具有外补丁( margin ),
但仍有内补丁( padding )和边框( border )。
要激活对象的绝对(absolute)定位,必须指定 left , right , top , bottom 属性中的至少一个,并且设置此属性值为 absolute 。
否则上述属性会使用他们的默认值 auto ,这将导致对象遵从正常的HTML布局规则,在前一个对象之后立即被呈递。
TRBL属性(TOP、RIGHT、BOTTOM、LEFT)只有当设定了position属性才有效。
当设定position:absolute
如果父级(无限)没有设定position属性,那么当前的absolute则结合TRBL属性以浏览器左上角为原始点进行定位
如果父级(无限)设定position属性,那么当前的absolute则结合TRBL属性以父级(最近)的左上角为原始点进行定位。
当设定position: relative
则参照父级(最近)的内容区的左上角为原始点结合TRBL属性进行定位(或者说相对于被定位元素在父级内容区中的上一个元素进行偏移),
无父级则以BODY的左上角为原始点。相对定位是不能层叠的。在使用相对定位时,无论元素是否进行移动,元素依然占据原来的空间。因此,
移动元素会导致它覆盖其他框。
一般来讲,网页居中的话用Absolute就容易出错,因为网页一直是随着分辨率的大小自动适应的,而Absolute则会以浏览器的左上角为原始点,
不会应为分辨率的变化而变化位置。有时还需要依靠z-index来设定容器的上下关系,数值越大越在最上面,数值范围是自然数。当然有一点要
注意,父子关系是无法用z-index来设定上下关系的,一定是子级在上父级在下。
-------------------------------------------
div 中的图片
div中的图片没有自适应功能,其大小不变
比如
.header {
height:40px;
width:980px;
margin:0 auto;
background:url(../images/header.jpg) no-repeat;
}
由于高度40px比较小,如果图片较大,那么则只显示图片最上的40px部分,其它部分不可见
-------------------------------------------
body部分margin 应该是为0的 可是实际上却不是0???
----------------------------------------------
.help a {
color: #fff;
text-decoration: none;
}
假如 none 值在属性声明的最后,所有的先前的其他取值都会被清除。例如,声明 text-decoration: underline overline blink none 等于声明
text-decoration: none。假如对象没有文本(如 img 元素)或者是空元素(如:<EM></EM>), 此属性不会发生作用。
假如你设置 body 对象的此属性值为 none , a 对象将依然保持其原有的下划线样式。除非你针对 a 对象声明此属性值。
--------------------------------------------------------
总体来说,javascript 和 jscript都是一种脚本语言,它们是便于客户端动态网页的开发.
javascript已经是一个标准了,好象叫ECMA javascript,而js是微软对这个标准的一个实现.Flash MX中的脚本语言也是对ECMA javascript的实现.
javascript可以在几乎所有的浏览器中被支持,而js只能被ie支持

浙公网安备 33010602011771号