Image 01 Image 02

0
Posted on 30th 四月 2006 by admin

1.网页背景色的设置

犯错机率:很大
普遍性:较广
犯错可能性:懒/不知道

约2年前我曾发现21cn上出现过一次没有设置背景色的情况,当时我用Email通知了他们,自此之后这个问题我从没犯过。

绝大部分人的窗口背景颜色都是白色,但如果象我这样个性的人,就会把windows窗口的背景颜色改成灰色或其他色,这样一来,如果你没有设置网页的背景颜色的话,你以为正常的网页在我的电脑上看起来会是一团糟。

2.Align center(自动居中)的滥用

犯错机率:非常大
普遍性:非常广
犯错可能性:以为方便/以为好用

工作中,修改、维护别人的网页是家常便饭,发现不少人有一个陋习:
在表格中的文字或图片,你是这样来令它居中、靠左或靠右过?

<div align=”center”>大家好啊!!</div>
<div align=”center”><img src=”xx.gif”></div>

当有些表格很多、文字很多、内容分得很细的时候,爱用这种方法(它在DW里的快捷键是Ctrl+Alt+C,FP不知道是什么)的人往往会狂用,惨了,我一碰到这样的网页就头痛,为什么要用那么多<div>来居中呢?tell me why?难道表格没有居中属性吗?为什么要加入这些垃圾代码?特别修改的时候也不能把文字或图片删除了就能自动清除

建议使用<td align=”center”>来居中,当需要多重定位的时候,才考虑<div align=”center”>,因为这个代码并不好处理,所以能用表格代替就用表格替代。

3.重复使用实现相同功能的代码、或杂七杂八的乱套代码

犯错机率:非常普遍
普遍性:非常普遍
犯错可能性:复杂多样

大家先来看一看下面的代码:
<center><p><font class=”css_id”><font class=”font11″><font color=”#CCCCCC”><font color=”#FFA76C” style=”font-size:14px;font-family:隶书”>标 题</font></font></font>
</center>你觉得这样的代码看起来感觉怎么样呢?</font></p>

我不知道读者有什么感觉,压根我一看到这样的代码就会先自我麻木十来秒,这十来秒目的是为了找一个能表达我的思想感情的词(我?你想反问我吗?sorry~~,我一般不犯,因为我做网页至少有一半以上的时间在浏览代码,代码中多了不该多的东西我一眼就能看出来。)。

看看上面的代码,使用了2个class,4个font来定义2个文本,其实这样的问题很多时候是在大家不断的修改中产生的,对代码不熟、或懒查看代码、又或不喜欢查看代码的人犯这些问题特别严重,当然,事实上别人浏览这个网页的时候,是没有任何问题的,但维护的人就…………。
这些多余的垃圾代码完全是可以省略掉的,其实上面的例子不够严重,更恐怖的我都见过。

另外还有一个问题也要提提的,就是<p>…</p>和<center>…</center>,为什么要用它们呢?tell me why~~,有甚者是这样的:

<td><div align=”center” class=”css_id”>
<center>
<p align=”center”></p>
<p align=”center”><font class=”css_id”><font class=”font11″><font color=”#CCCCCC”><font color=”#FFA76C” style=”font-size:14px;font-family:隶书”>标 题</font></font></font>
</center></td>你觉得这样的代码看起来感觉怎么样呢?</font></p></center></div></td>

看到这样的代码我是会很无奈的(更无奈的是我经常看到,而且必须看),我来简化一下:
<td align=”center” class=”css_id”>
<font color=”#FFA76C” style=”font-size:14px;font-family:隶书”>标题</font>
你觉得这样的代码看起来感觉怎么样呢?</td>

是不是看起来觉得这个世界安静了很多?”标题”后面的文字完成可以定义在<td>的class里,就算不用css,再用多一个<.font>也没问题,一样很清爽。

4.表格不正确嵌套

犯错机率:一般
普遍性:普遍
犯错可能性:对这个不了解

其实这是一个街知巷闻的问题了,但还是不断有人犯,不正确的嵌套表格,可能会令到你被老总叫到办公室里臭骂一顿,会令到你以为正常的网页用ADSL开2、3分钟都开不了。

先讲第一个问题,就是在一个大表格里不断地嵌套表格,这样会令到打开网页的速度变慢(虽然说现在的IE改善了这一问题,但还是不建议这样做),另一方面维护、修改也极不方便,一般来说简单的套用是没有问题的,甚至3、4层,但是不要把所有内容都放到一个表格里去。

第二个问题就是在一个大表格里放入所有内容,而其中包括一个免费的计数器代码,嘻嘻,你猜有可能出现什么情况呢?其实也没什么大不了的,最严重的就是你的IE象死机了一样,什么都没显示。解决方法就是把计数器单独放在一个表格里,别和其他内容一起放在同一表格。

5.写代码缩进的时候,不是使用Tab而是使用空格

犯错机率:一般
普遍性:较少
犯错可能性:不知道Tab更好用

这一个问题针对js、vbs、asp、php之类,html不能使用Tab会写一点程序的都知道什么叫缩进,怎么样缩进?有人使用空格,有人使用Tab,如果你是使用空格的,那么从现在起,改用Tab吧。

0
Posted on 30th 四月 2006 by admin

CSS(Cascading Stylesheets,层叠样式表)是一种制作网页的新技术,现在已经为大多数的浏览器所支持,成为网页设计必不可少的工具之一。使用CSS能够简化网页的格式代码,加快下载显示的速度,也减少了需要上传的代码数量,大大减少了重复劳动的工作量。尤其是当你面对的是有数百个网页的站点时,CSS简直象是神对我们的恩赐!

前言

CSS(Cascading Stylesheets,层叠样式表)是一种制作网页的新技术,现在已经为大多数的浏览器所支持,成为网页设计必不可少的工具之一。
W3C(The World Wide Web Consortium)把动态HTML(Dynamic HTML)分为三个部分来实现:脚本语言(包括JavaScript、Vbscript等)、支持动态效果的浏览器(包括Internet Explorer、Netscape Navigator等)和CSS样式表。

一.层叠样式表的特点
且不说过去的网页缺少动感,就是在网页内容的排版布局上也有很多困难,如果不是专业人员或特别有耐心的人,很难让网页按自己的构思和创意来显示信息。即便是掌握了HTML语言精髓的人也要通过多次地测试,才能驾驭好这些信息的排版,过程十分漫长和痛苦。为了Internet的发展,让更多人早日踏足这个多姿多彩的世界,新的HTML辅助工具呼之欲出。
样式表就是在这种需求下诞生的,它首先要做的是为网页上的元素精确地定位,可以让网页设计者象导演一样,轻易地控制由文字、图片组成的演员们,在网页这个舞台上按剧本要求好好地表演。
其次,它把网页上的内容结构和格式控制相分离。浏览者想要看的是网页上的内容结构,而为了让浏览者更好地看到这些信息,就要通过格式控制来帮忙了。以前两者在网页上的分布是交错结合的,查看修改很不方便,而现在把两者分开就会大大方便网页的设计者。内容结构和格式控制相分离,使得网页可以光由内容构成,而将所有网页的格式控制指向某个CSS样式表文件。这样一来的好出表现在两个方面:
第一,简化了网页的格式代码,外部的样式表还会被浏览器保存在缓存里,加快了下载显示的速度,也减少了需要上传的代码数量(因为重复设置的格式将被只保存一次)。

第二,只要修改保存着网站格式的CSS样式表文件就可以改变整个站点的风格特色,在修改页面数量庞大的站点时,显得格外有用。避免了一个一个网页的修改,大大减少了重复劳动的工作量,当你面对的是有数百个网页的站点时,CSS简直象是神对我们的恩赐!^_^

二.添加层叠样式表的方法
我们为网页添加样式表的方法有四种。
1.最简单的方法是直接添加在HTML的标识符(tag)里:
< Tag style=”properties”>网页内容< /tag>
举个例子:
< p style=”color: blue; font-size: 10pt”>CSS实例< /p>
代码说明:
用蓝色显示字体大小为10pt的“CSS实例”。尽管使用简单、显示直观,但是这种方法不怎么常用,因为这样添加无法完全发挥样式表的优势“内容结构和格式控制分别保存”。
2.添加在HTML的头信息标识符< head>里:
< head>
< style type=”text/css”>
< !– 样式表的具体内容 –>
< /style>
< /head>
type=”text/css”表示样式表采用MIME类型,帮助不支持CSS的浏览器过滤掉CSS代码,避免在浏览器面前直接以源代码的方式显示我们设置的样式表。但为了保证上述情况一定不要发生,还是有必要在样式表里加上注释标识符“< !–注释内容–>”。
3.链接样式表
同样是添加在HTML的头信息标识符< head>里:
< head>
< link rel=”stylesheet” href=”*.css” type=”text/css” media=”screen”>
< /head>
*.css是单独保存的样式表文件,其中不能包含< style>标识符,并且只能以css为后缀。
Media是可选的属性,表示使用样式表的网页将用什么媒体输出。取值范围:
·Screen(默认):输出到电脑屏幕
·Print:输出到打印机
·TV:输出到电视机
·Projection:输出到投影仪
·Aural:输出到扬声器
·Braille:输出到凸字触觉感知设备
·Tty:输出到电传打字机
·All:输出到以上所有设备
如果要输出到多种媒体,可以用逗号分隔取值表。
Rel属性表示样式表将以何种方式与HTML文档结合。取值范围:
·Stylesheet:指定一个外部的样式表
·Alternate stylesheet:指定使用一个交互样式表
4.联合使用样式表
同样是添加在HTML的头信息标识符< head>里:
< head>
< style type=”text/css”>
< !–
@import “*.css”
其他样式表的声明
–>
< /style>
< /head>
以@import开头的联合样式表输入方法和链接样式表的方法很相似,但联合样式表输入方式更有优势。因为联合法可以在链接外部样式表的同时,针对该网页的具体情况,做出别的网页不需要的样式规则。
需要注意的是:
·联合法输入样式表必须以@import开头。
·如果同时输入多个样式表有冲突的时候,将按照第一个输入的样式表对网页排版。
·如果输入的样式表和网页里的样式规则冲突时,使用外部的样式表。

三.层叠样式表的格式
一般来说,样式表的声明分为选择符(selector)和块{}(block),块里包含属性(properties)和属性的取值(value),基本格式如下:
选择符 {属性:值}
其它格式1:
选择符1,选择符2,选择符3 {属性1:值1;属性2:值2;属性3:值3}
有时候多个选择符将使用相同的设置,为了简化代码,我们可以一次性为它们设置样式,并在多个选择符之间加上“,”来分隔它们。
当有多个属性的时候,必须在两个属性之间用“;”来分隔。
其它格式2:
选择符1 选择符2 {属性1:值1;属性2:值2;属性3:值3}
和格式1非常相似,只是在选择符之间少加了“,”,但作用却大不相同。表示如果选择符2包括的内容同时包括在选择符1里的时候,所设置的样式规则才起作用。

四.层叠样式表的分类
为了使网页的格式不过分的单调,必需让相同的选择符也能分类,并能按照不同的类别来进行不同的样式设计。基本格式如下:
选择符.类别名 {属性:值}
类别名将可以在HTML的标识符里引用:
< 标识符 class=类别名>网页内容

五.层叠样式表的伪类
除了上述的分类方式外,为了使分类的使用更灵活多样,又产生了伪类的概念。类和伪类有什么样的区别呢?
一般地说,选择符可以和多个类采用捆绑的形式来设定,这样虽然能够为同一个选择符创建多种不同的样式,但捆绑的形式同时也限制了设定的类为其它的选择符所使用。伪类的产生就是为了解决这个问题,每个预声明的伪类都可以被所有的HTML标识符引用,当然有些块级内容的设置除外。基本格式如下:
.伪类名 {属性:值}
伪类可以被任何标识符在HTML里引用。
<标识符 class=伪类名>网页内容

六.控制字体的样式
控制字体的样式包括控制字体类型、字体大小、字体风格、字体粗细四个部分。
1.字体类型
平时在使用WORD之类的字处理软件的时候,经常需要调整字体的显示,比如说“Arial”、“Impact”、“Verdana”等字体都是笔者使用的较多的。
基本格式如下:
font-family: 字体名称
如果在font-family后加上多种字体的名称,浏览器回按字体名称的顺序逐一在用户的计算机里寻找已经安装的字体,一旦遇到与要求的相匹配的字体,就按这种字体显示网页内容,并停止搜索;如果不匹配就继续搜索,直到找到为止,万一样式表里的所有字体都没有安装的话,浏览器就会用自己默认的字体来替代显示网页的内容。
注意:
·当指定多种字体时,用“,”分隔每种字体名称。
·当字体名称包含两个以上分开的单词时,用“”把该字体名称括起来。
·当样式规则外已经有“”时,用‘’代替“”。
2.字体大小
基本格式如下:
font-size: 字号参数
字号的取值范围:
·以Point为单位:点单位在所有的浏览器和操作平台上都适用
·以Em为单位:指字母要素的尺寸,和Point相同距离
·以Pixes为单位:像素可以使用于所有的操作平台,但可能会因为浏览者的屏幕分辨率不同,而造成显示上的效果差异
·以in(英寸)为单位
·以cm(厘米)为单位
·以mm(毫米)为单位
·以pc(打印机的字体大小)为单位
·以ex(x-height)为单位
·smaller:比当前文字的默认大小更小一号
·larger:比当前文字的默认大小更小大号
·使用比例关系
·xx-small
·x-small
·small
·medium
·large
·x-large
·xx-large
3.字体风格
字体风格只能控制各种斜体字的显示。
基本格式如下:
font-style: 斜体字的名称
4.字体粗细
字体粗细控制粗体字的显示,取值范围从数字100~900,浏览器默认的字体粗细为400。另外可以通过参数lighter和bolder使得字体在原有基础上显得更细或更粗些。
基本格式如下:
font-weight: 字体粗细

0
Posted on 30th 四月 2006 by admin

七.控制文字的样式
控制文字的样式包括文字大小写、文字修饰两个部分。
1.文字大小写
文字大小写使网页的设计者不用在输入文字时就完成文字的大小写,而可以在输入完毕后,再根据需要对局部的文字设置大小写。
基本格式如下:
text-transform: 参数
参数取值范围:
·uppercase:所有文字大写显示
·lowercase:所有文字小写显示
·capitalize:每个单词的头字母大写显示
·none:不继承母体的文字变形参数
注意:继承是指HTML的标识符对于包含自己的标识符的参数会继承下来。
2.文字修饰
文字修饰的主要用途是改变浏览器显示文字链接时的下划线。
基本格式如下:
text-decoration: 参数
参数取值范围:
·underline:为文字加下划线
·overline:为文字加上划线
·line-through:为文字加删除线
·blink:使文字闪烁
·none:不显示上述任何效果

八.控制文本的样式
控制文本的样式包括单词距离、字母距离、文本行距、文本水平对齐、文本垂直对齐文本缩进六个部分。
1.单词间距
单词间距指的是英文每个单词之间的距离,不包括中文文字。
基本格式如下:
word-spacing: 间隔距离
间隔距离的取值:points、em、pixes、in、cm、mm、pc、ex、normal等。
2.字母间距
字母间距是指英文字母之间的距离,功能、用法,以及参数的设置和单词间距很相似。
基本格式如下:
letter-spacing: 字母间距
3.行距
行距是指上下两行基准线之间的垂直距离。一般地说,英文五线格练习本,从上往下数的第三条横线就是计算机所认为的该行的基准线。
基本格式如下:
line-height: 行间距离
行间距离取值:
·不带单位的数字:以1为基数,相当于比例关系的100%
·带长度单位的数字:以具体的单位为准
·比例关系
注意:如果文字字体很大,而行距相对较小的话,可能会发生上下两行文字互相重叠的现象。
4.文本水平对齐
文本水平对齐可以控制文本的水平对齐,而且并不仅仅指文字内容,也包括设置图片、影像资料的对齐方式。
基本格式如下:
text-align: 参数
参数的取值:
·left:左对齐
·right:右对齐
·center:居中对齐
·justify:相对左右对齐
但需要注意的是,text-alight是块级属性,只能用于< p>、< blockquqte>、< ul>、< h1>~< h6>等标识符里。
5.文本垂直对齐
文本的垂直对齐应当是相对于文本母体的位置而言的,不是指文本在网页里垂直对齐。比如说,表格的单元格里有一段文本,那么对这段文本设置垂直居中就是针对单元格来衡量的,也就是说,文本将在单元格的正中显示,而不是整个网页的正中。
基本格式如下:
vertical-align: 参数
参数取值:
·top:顶对齐
·bottom:底对齐
·text-top:相对文本顶对齐
·text-bottom:相对文本底对齐
·baseline:基准线对齐
·middle:中心对齐
·sub:以下标的形式显示
·super:以上标的形式显示
6.文本缩进
文本缩进可以使文本在相对默认值较窄的区域里显示,主要用于中文板式的首行缩进,或是为大段的引用文本和备注做成缩进的格式。
基本格式如下:
text-indent: 缩进距离
缩进距离取值:
·带长度单位的数字
·比例关系
但是需要注意的是,在使用比例关系的时候,有人会认为浏览器默认的比例是相对段落的宽度而言的,其实事实并非如此,整个浏览器的窗口才是浏览器所默认的参照物。
另外,text-indent是块级属性,只能用于< p>、< blockquqte>、< ul>、< h1>~< h6>等标识符里。
九.控制颜色和背景的样式
控制颜色和背景的样式包括颜色属性、背景颜色、背景图片、背景图片重复、背景图片固定、背景定位六个部分。
1.颜色属性
基本格式如下:
color: 参数
颜色参数取值范围:
·以RGB值表示
·以16进制(hex)的色彩值表示
·以默认颜色的英文名称表示
以默认颜色的英文名称表示无疑是最为方便的,但由于预定义的颜色种类太少,所以更多的网页设计者喜欢用RGB的方式。RGB方式的好处很多,不但可以用数字的形式精确地表示颜色,而且也是很多图像制作软件(如Photoshop)里默认使用的规范,这样一来就为图片和网页更好地结合打下了坚实的基础。
2.背景颜色
在HTML当中,要为某个对象加上背景色只有一种办法,那就是先做一个表格,在表格中设置完背景色,再把对象放进单元格。这样做比较麻烦,不但代码较多,还要为表格的大小和定位伤些脑筋。现在用CSS就可以轻松地直接搞定了,而且对象的范围很广,可以是一段文字,也可以只是一个单词或一个字母。
基本格式如下:
background-color: 参数
参数取值和颜色属性一样。
3.背景图片
基本格式如下:
background-image: url(URL)
URL就是背景图片的存放路径。如果用“none”来代替背景图片的存放路径,将什么也不显示。
4.背景图片重复
背景图片重复控制的是背景图片平铺与否,也就是说,结合背景定位的控制可以在网页上的某处单独显示一幅背景图片。
基本格式如下:
background-repeat: 参数
参数取值范围:
·no-repeat:不重复平铺背景图片
·repeat-x:使图片只在水平方向上平铺
·repeat-y:使图片只在垂直方向上平铺
如果不指定背景图片重复属性,浏览器默认的是背景图片向水平、垂直两个方向上平铺。
5.背景图片固定
背景图片固定控制背景图片是否随网页的滚动而滚动。如果不设置背景图片固定属性,浏览器默认背景图片随网页的滚动而滚动。为了避免过于花哨的背景图片在滚动时伤害浏览者的视力,所以可以解除背景图片和文字内容的捆绑,该为和浏览器窗口捆绑。
基本格式如下:
background-attachment: 参数
参数取值范围:
·fixed:网页滚动时,背景图片相对于浏览器的窗口而言,固定不动
·scroll:网页滚动时,背景图片相对于浏览器的窗口而言,一起滚动
6.背景定位
背景定位用于控制背景图片在网页中显示的位置。
基本格式如下:
background-position: 参数表
参数取值范围:
·带长度单位的数字参数
·top:相对前景对象顶对齐
·bottom:相对前景对象底对齐
·left:相对前景对象左对齐
·right:相对前景对象右对齐
·center:相对前景对象中心对齐
·比例关系
参数中的center如果用于另外一个参数的前面,表示水平居中;如果用于另外一个参数的后面,表示垂直居中。

十.控制列表的样式
列表是HTML里一种很有用的显示方式,可以把相关的并列内容整齐地垂直排列,使网页显得整洁专业,并让浏览者有一目了然的感觉。
样式表为列表增加了一些功能,控制列表的样式包括列表样式、图形符号、列表位置三个部分。
1.列表符号
列表符号是指显示于每一个列表项目前的符号标识。
基本格式如下:
list-style-type:参数
参数取值范围:
·disc:圆形
·circle:空心圆
·square:方块
·decimal:十进制数字
·lower-roman:小写罗马数字
·upper-roman:大写罗马数字
·lower-alpha:小写希腊字母
·upper-alpha:大写希腊字母
·none:无符号显示
参数中的disc是默认选项。
2.图形符号
图形符号指原来列表的项目符号将可以使用图形来代替。
基本格式如下:
list-style-image:URL
URL是用来代替项目符号的图形文件的地址,可以使用相对地址或绝对地址。
3.列表位置
列表位置描述列表在何处显示。
基本格式如下:
list-style-position:参数
参数取值范围:
·inside:在BOX模型内部显示
·outside:在BOX模型外部显示
这里又出现了一个新的概念:BOX模型。BOX是指一种容器,包含了应用样式规则的对象,具体介绍将在后文中给出。
十一.控制用户界面的样式
在网页上,鼠标平时呈箭头形,指向链接时成为手形,等待网页下载时成为沙漏形……这似乎是约定俗成的。虽然这样的设计能使我们知道浏览器现在的状态或是可以做什么,但这些好像还不能完全地满足我们的需要。就拿链接来说,可以是指向一个帮助文件,也可以是向前进一页或是向后退一页,针对如此多的功能光靠千篇一律的手形鼠标是不能说明问题的。值得庆幸的是,CSS提供了多达13种的鼠标形状,供我们选择。
基本格式如下:
cursor:鼠标形状参数
CSS鼠标形状参数表:
CSS代码
鼠标形状
style=”cursor:hand”
手形
style=”cursor:crosshair”
十字形
style=”cursor:text”
文本形
style=”cursor:wait”
沙漏形
style=”cursor:move”
十字箭头形
style=”cursor:help”
问号形
style=”cursor:e-resize”
右箭头形
style=”cursor:n-resize”
上箭头形
style=”cursor:nw-resize”
左上箭头形
style=”cursor:w-resize”
左箭头形
style=”cursor:s-resize”
下箭头形
style=”cursor:se-resize”
右下箭头形
style=”cursor:sw-resize”
左下箭头形

0
Posted on 30th 四月 2006 by admin

十二.控制BOX的样式
样式表规定了一个容器BOX,它将要储存一个对象的所有可操作的样式。包括了对象本身、边框空白、对象边框、对象间隙四个方面。

为了大家更好地理解这些属性的意义,以及互相之间的关系,请看下面这个图示:

1.边框空白(MARGIN)
如图所示,位于BOX模型的最外层,包括四项属性。
格式分别如下:
·margin-top:顶部空白距离
·margin-right:右边空白距离
·margin-bottom:底部空白距离
·margin-left:左边空白距离
空白的距离可以用带长度单位的数字表示。
如果使用上述属性的简化方式margin,可以在其后连续加上四个带长度单位的数字,来分别表示margin-top、margin-right、margin-bottom、margin-left,每个数字中间要用空格分隔。

2.对象边框(BORDER)
如图所示,位于边框空白和对象空隙之间,包括了七项属性。
格式分别如下:
·border-top:顶边框宽度
·border-right:右边框宽度
·border-bottom:底边框宽度
·border-left:左边框宽度
·border-width:所有边框宽度
·border-color:边框颜色
·border-style:边框样式参数
其中border-width可以一次性设置所有的边框宽度,border-color同时设置四面边框的颜色时,可以连续写上四种颜色,并用空格分隔。上述连续设置的边框都是按border-top、border-right、border-bottom、border-left的顺序。
Border-style相对别的属性而言稍稍复杂些,因为它还包括了多个边框样式的参数:
·none:无边框。
·dotted:边框为点线。
·dashed:边框为长短线。
·solid:边框为实线。
·double:边框为双线。
·groove:根据color属性显示不同效果的3D边框
·ridge:根据color属性显示不同效果的3D边框
·inset:根据color属性显示不同效果的3D边框
·outset:根据color属性显示不同效果的3D边框

3.对象间隙(PADDING)
如图所示,位于对象边框和对象之间,包括了四项属性。
基本格式如下:
·padding-top:顶部间隙
·padding-right:右边间隙
·padding-bottom:底部间隙
·padding-left:左边间隙
和MARGIN类似,PADDING也可以用padding一次性设置所有的对象间隙,格式也和MARGIN相似,不再一一列举了。

十三.显示控制样式
基本格式如下:
display: 参数
参数取值范围:
·block(默认):在对象前后都换行
·inline:在对象前后都不换行
·list-item:在对象前后都换行,增加了项目符号
·none:无显示

十四.空白控制样式
基本格式如下:
空白属性决定如何处理元素内的空格。
white-space: 参数
参数取值范围:
normal:把多个空格替换为一个来显示
pre:忠实地按输入显示空格
nowrap:禁止换行
但要注意的是,write-space也是一个块级属性。

–系列完–

0
Posted on 28th 四月 2006 by admin

西安风味小吃大全

西安烤肉
在西安吃烤肉的地方不太多,最方便的就是鼓楼后的一条街道,夜晚的大院灯火通明,一条街都热
闹起来了。每家店门口都有堆积如山的羊肉、牛肉签子,很多游客小心翼翼地问:“多少串起卖?”“十五串!” “那就来十五串!”
作为一个良好市民,你一定习惯性地去找老板付钱,老板大手一挥:“吃完再付嘛!”嘿,特爽快。

烤鱼,在体育场北路和朱雀路的十字有一家烤肉店,烤鱼绝对是一流的。吃不惯孜然的朋友要少吃一些。

烤羊排

烧羊腿

烤油馍

烤肉串

掰出的心情——羊肉泡馍
三五好友,围聚一桌,屋外漫天雪花,屋内,掰出的一份心情。馍都是自己掰,机器切的一点都不好吃。掰的越小越好,掰好的馍放在“巨大”的海碗里,拿到“浇汤”的大师傅那里,你要是不认真掰呀,大师傅也不好好给你“浇汤”,难怪很多朋友一直没有吃到最“棒”的泡馍。你不认真,大师傅当然也不认真了,出来后,有香甜的辣椒酱和鲜美的糖蒜一道做伴,她的美味谁能忘却?
要说吃的地方——菊花园老马家得最好吃,南稍门的“建基”也不错。(老孙家泡馍给外地游客吃,老西安一般不去)

水盆羊肉 汤那个鲜呀

岐山面——回味悠长的古风
源于西岐。传说周文王斩杀了一条恶龙,用其做臊子,犒赏军士。

岐山县位于西安以西、宝鸡以东60多公里,这里是西周的发祥地,人杰地灵,土地肥沃,是陕西盛产小麦的大县。于是,岐山人开始不断改进,用自己的小麦做出了享誉西北乃至全国的臊子面。我对这里有着特殊的感情,其中一部分也属于臊子面。
岐山臊子面不仅味美,而且还有着一个美丽的传说。在西周时期,有一条恶龙兴风作孽,伤害百姓。一天,周文王之子周武王正带兵巡查,碰巧遇见了这条恶龙大肆伤害百姓,武王命令士兵列队,举箭齐发,击毙恶龙。为了庆贺,一表吉祥。令军中火夫抬来一口大锅,将切成小块的龙肉炒做,由于肉少兵多,只能给每人在碗里放少许臊子,结果使面条倍增美味。

这个是“岐山臊子面”和“臊子夹馍”
后来只有用饲养较多的猪肉做臊子。经过一代代的改进,现在的臊子面突出表现有九个特点,既:酸、辣、香、薄、筋、光、煎、稀、汪。酸——用老陈醋使汤料突出酸;辣——用煎油泼辣子面,使其汤料辣里透;香——臊子有一种独特的香味;薄——指面条用手擀的很薄;筋——面条薄而不脓;光——面条光如游鱼;煎——汤料温度很高;稀——每碗只吃一口,面条很少,一般的人要吃10多碗,小伙可以吃到3、40碗;汪——汤料的油很多,封住了汤的热气,即使数九寒天,也不容易放凉。同时底菜和漂菜也很讲究,在菜色上分红(红萝卜)、黄(黄花)、白(豆腐)、金(鸡蛋饼)、黑(木耳)青(韭菜)等等,烹调臊子更是考究。

过去,每当我出差回到家的第一件事便是吃臊子面,吃地地道道的臊子面,那个惬意你就别提了。现在随着市场的需要,几乎全国各地都有岐山臊子面馆,臊子面馆由陕西人联系感情的场地变为五湖四海联系感情的场所。吃岐山臊子面成为一种情愫。

西安的凉皮、凉粉也好吃。西安的凉粉到了嘴里,不腻不碎,有一种淡淡的粘味,吃起来有些滑爽,带些年糕的味觉,再加上麻汁香味,多了些秦川大地的情怀。
真正好吃的是西安凉皮。凉粉是条块状的,而凉皮如同宽面一样。用水过了凉好,加上少量的麻汁、黄瓜丝或者香菜、香椿什么的,洒上一点辣油,格外好吃。据说,每晚六点以后,你可能就不会买到好凉皮了,由此可见西安人是多么喜爱凉皮。
西安的女孩子也是喜欢吃凉皮的不得了,红红的辣油,即使不吃辣的人,看的都流口水。

西安女孩子的最爱,这是”米面皮”,还有”擀面皮”和”炒面皮”

蜜汁八宝粥

冰粽子
冰粽子

这个是炸酱BIANGBIANG面,不是油泼的

听他人解释:“面条像裤带”,此面俗称 “biang-biang(现代汉语字典上没有这个字)面”,正宗的关中人所做的“biangbiang面”和通常城里人所吃的扯面还是有一定区别的。正宗的“biangbiang面”,一根面条宽度可达二三寸,长度则在1米上下,厚度厚时与硬币差不多,薄时却如同蝉翼。一根面条所用去的面粉通常可达2两,因而对于饭量小的人来说,一根面条足够一顿饭,而对大饭量的关中人来说,一顿吃8两1斤也是轻轻松松的。

关中人吃面,喜欢将面和硬揉软,擀厚、切宽。这种面煮熟以后,捞在碗里,无论是浇臊子,还是没油辣子。吃起来都很光滑、柔软、热火、有筋性。既可口又耐饥。人们脖子一伸一缩,呼噜噜吞进肚里,吃饱吃胀,饱嗝一打,顿时浑身上下都是力气,拉架子车、上山扛石头,五六个小时不吃不喝也不觉得饿。

关于“biangbiang面”的得名,有着这样一个顺口溜——“一点飞上天,黄河两头弯,八字大张口,言字往进走,左一纽,右一纽,左一长,右一长,中间来个马大王,心字底,月字旁,两个贼娃立在旁,座上车车走四方”。在品尝它的时候会发出biangbiang的声音,非常好吃

葫芦头
源于宋代的“煎白肠”,相传至今。其主料由猪大肠头、猪肚头、肥肠去腥臊后加佐料煮成汤,再用汤煮馍而成。其汤酽味浓、鲜香适口,是一种高饱和脂肪酸、高胆固醇食品。具有浓郁味醇,鲜香滑嫩,肥而不腻,老幼皆宜的特点。
葫芦头是西安特有的风味小吃,它和羊肉泡馍有相似的地方,既同为掰馍,但主要原料不是羊肉,而是猪肠。葫芦头相传源于唐代,名医孙思邈到长安一家专卖猪肠的小店吃饭觉得腥味大,油腻多,得知制法不得当,便传授窍道,并留药葫芦让店主调味,店主为感谢孙思邈,特将药葫芦高悬门口,“杂糕”也改称“葫芦头“

甑糕
甑糕是陕西关中地区传统早点食品,是以糯米和红枣为原料制成的一种甜糕。其特点是:枣香浓郁、软糯粘甜。而且大枣还具有益气补血、养肾安神之功
特点:枣香浓郁、软糯粘甜。大枣还具有益气补血、养肾安神之功效。
制作方法:
主要原料:糯米、红枣或蚕豆等。

炒凉粉

蒸碗

洋芋叉叉

辣子蒜羊血

一口香

羊肉烧麦

八宝醪糟

肉夹馍

果干

黄桂柿子饼

0
Posted on 7th 四月 2006 by admin

网上流传的很多关于windows server 2003系统的安全配置,但是仔细分析下发现很多都不全面,并且很多仍然配置的不够合理,并且有很大的安全隐患,今天我决定仔细做下极端BT的2003服务器的安全配置,让更多的网管朋友高枕无忧。

我们配置的服务器需要提供支持的组件如下:(ASP、ASPX、CGI、PHP、FSO、JMAIL、MySql、SMTP、POP3、FTP、3389终端服务、远程桌面Web连接管理服务等),这里前提是已经安装好了系统,IIS,包括FTP服务器,邮件服务器等,这些具体配置方法的就不再重复了,现在我们着重主要阐述下关于安全方面的配置。

关于常规的如安全的安装系统,设置和管理帐户,关闭多余的服务,审核策略,修改终端管理端口, 以及配置MS-SQL,删除危险的存储过程,用最低权限的public帐户连接等等。
先说关于系统的NTFS磁盘权限设置,大家可能看得都多了,但是2003服务器有些细节地方需要注意的,我看很多文章都没写完全。

C盘只给administrators 和system权限,其他的权限不给,其他的盘也可以这样设置,这里给的system权限也不一定需要给,只是由于某些第三方应用程序是以服务形式启动的,需要加上这个用户,否则造成启动不了。

Click to Open in New Window

Windows目录要加上给users的默认权限,否则ASP和ASPX等应用程序就无法运行。以前有朋友单独设置Instsrv和temp等目录权限,其实没有这个必要的。

Click to Open in New Window

另外在c:/Documents and Settings/这里相当重要,后面的目录里的权限根本不会继承从前的设置,如果仅仅只是设置了C盘给administrators权限,而在All Users/Application Data目录下会 出现everyone用户有完全控制权限,这样入侵这可以跳转到这个目录,写入脚本或只文件,再结合其他漏洞来提升权限;譬如利用serv-u的本地溢出提升权限,或系统遗漏有补丁,数据库的弱点,甚至社会工程学等等N多方法,从前不是有牛人发飑说:”只要给我一个webshell,我就能拿到system”,这也的确是有可能的。在用做web/ftp服务器的系统里,建议是将这些目录都设置的锁死。其他每个盘的目录都按照这样设置,没个盘都只给adinistrators权限。

Click to Open in New Window

另外,还将:net.exe,cmd.exe,tftp.exe,netstat.exe,regedit.exe,at.exe,attrib.exe,cacls.exe,这些文件都设置只允许administrators访问。

把不必要的服务都禁止掉,尽管这些不一定能被攻击者利用得上,但是按照安全规则和标准上来说,多余的东西就没必要开启,减少一份隐患。

在”网络连接”里,把不需要的协议和服务都删掉,这里只安装了基本的Internet协议(TCP/IP),由于要控制带宽流量服务,额外安装了Qos数据包计划程序。在高级tcp/ip设置里–”NetBIOS”设置”禁用tcp/IP上的NetBIOS(S)”。在高级选项里,使用”Internet连接防火墙”,这是windows 2003 自带的防火墙,在2000系统里没有的功能,虽然没什么功能,但可以屏蔽端口,这样已经基本达到了一个IPSec的功能。

Click to Open in New Window

Click to Open in New Window

Click to Open in New Window

Click to Open in New Window

这里我们按照所需要的服务开放响应的端口。在2003系统里,不推荐用TCP/IP筛选里的端口过滤功能,譬如在使用FTP服务器的时候,如果仅仅只开放21端口,由于FTP协议的特殊性,在进行FTP传输的时候,由于FTP 特有的Port模式和Passive模式,在进行数据传输的时候,需要动态的打开高端口,所以在使用TCP/IP过滤的情况下,经常会出现连接上后无法列出目录和数据传输的问题。所以在2003系统上增加的windows连接防火墙能很好的解决这个问题,所以都不推荐使用网卡的TCP/IP过滤功能。

0
Posted on 7th 四月 2006 by admin

关闭139端口
1点击“开始菜单”后,选“设置”菜单中的“网络连接”选项。
2在弹出的“网络连接”窗口中点击“本地连接”选目的“属性”命令。
3在弹出的“本地连接属性”窗口中选“Internet协议(TCP/IP)”选项并点击“属性”按钮。
4最后进入“高级TCP/IP设置”窗口,选“WINS设置”选项卡,在里面有一项“禁用TCP/IP的NETBIOS”,选择该选项后就会关闭139端口了。

0
Posted on 7th 四月 2006 by admin

关闭445端口
1在命令行窗口运行修改注册表命令RegEdit
2在弹出的注册表编辑器窗口的左边找到下面目录
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\netBT\Parameters
可以一级一级目录往下点击,也可用“查找”命令找到NetNT项,然后点击
Parameters项。
3在编辑窗口的右边空白处点击鼠标右键,出现的“新建”菜单中选“DWORD值”,将新建的DWORD参数命名为“SMBDeviceEnabled”,数值为缺省的“0”。
4修改完成后退出RegEdit,重启机器。
5运行“netstat  – an”,可发现445端口已经不再Listening了。
最后及时安装杀毒软件,升级到最新的病毒库。

1
Posted on 7th 四月 2006 by admin

1. 给web根目录的IIS用户只给读权限。如图:

Click to Open in New Window

然后我们对响应的uploadfiles/或其他需要存在上传文件的目录额外给写的权限,并且在IIS里给这个目录无脚本运行权限,这样即使网站程序出现漏洞,入侵者也无法将asp木马写进目录里去,呵呵, 不过没这么简单就防止住了攻击,还有很多工作要完成。如果是MS-SQL数据库的,就这样也就OK了,但是Access的数据库的话,其数据库所在的目录,或数据库文件也得给写权限,然后数据库文件没必要改成.asp的。这样的后果大家也都知道了把,一旦你的数据库路径被暴露了,这个数据库就是一个大木马,够可怕的。其实完全还是规矩点只用mdb后缀,这个目录在IIS里不给执行脚本权限。然后在IIS里加设置一个映射规律,如图:

Click to Open in New Window

这里用任意一个dll文件来解析.mdb后缀名的映射,只要不用asp.dll来解析就可以了,这样别人即使获得了数据库路径也无法下载。这个方法可以说是防止数据库被下载的终极解决办法了。