随机div标签背景颜色和随机文字颜色的实现方法

在做网站时,经常会遇到一些特效问题,像如何随机文字颜色,如何随机标签背景颜色等,今天影子分享一下简单的方法;
例子一:随机div标签背景颜色,像p标签,h1标签等实现原理类似。

先看代码

< !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

 
   New Document 
	
 

 
  

请注意,在使用时,要在body加载

   

这是使用document.getElementsByTagName遍历div标签,实现统一随机背景颜色。

例子二:随机文字颜色,像文字大小等其它样式,都可以实现。
先看代码



会变色的字

这个实现方法,是通过document.getElementById('ppp')查找id为ppp的标签p,添加color属性值。

可能有更多,像随机背景图片等,都可以通过以上方法进行举一反三。

参考:
1.http://blog.csdn.net/hi_dzj/article/details/9233851
2.http://zhidao.baidu.com/question/124853632.html

网页栅格系统研究(4):技术实现

前三篇文章中,明确了栅格系统的设计细节和适用范围。这一篇将集中讨论960栅格系统的技术实现。

Blueprint的实现

Blueprint是一个完整的CSS框架,栅格系统是它的一部分功能。我们来看demo页面:

采用浮动来实现布局,简单明了

950两侧没有margin, 最后一列的class需要加上last

采用额外标签来清除浮动

960.gs的实现

谈到960栅格系统,不得不提960.gs. Nathan Smith在这篇文章中,详细阐述了他的想法和设计思路。这里有个demo页面,核心代码很简单:

以下为引用的内容:



 

上面就构建了三栏布局:

有意思的几点:

margin是均匀放在950两侧的

所有grid除了宽度不同,左右边距都一致margin: 0 10px;

代码简单清晰,起始和结束列不需要添加额外class

很明显,Blueprint和960.gs都是采用浮动来实现布局的,主容器需要添加额外标签来清除浮动(可以参考这里)。当然,这也不是什么大问题,请看这篇文章的总结,不添加额外标签也可以清除浮动。

YUI的实现

接着来看大名鼎鼎的YUI Grids CSS. YUI的CSS框架由三个文件组成:

以下为引用的内容:

reset.css - 样式重置

fonts.css - 版式字体控制

grids.css - 栅格系统

我们从demo开始:

注意,demo链接中的宽度是750的,但我们只要将

 

 

中的id改为doc2, 页面宽度就自动变为950宽了(YUI非常强大^o^)。来看下dom结构:

采用的也是浮动布局,简化后的CSS代码为:

以下为引用的内容:

YUI的特点是:

依旧是采用浮动布局,槽(Gutter)宽通过margin-left来控制(Blueprint采用右边距,960.gs采用均分,这三个框架对槽的处理实在有意思)

总宽度采用em, 这样可以用在弹性布局上

栏的布局用的是百分比,采用了流体布局

YUI的好处是能用来做自适应布局,在这前面两个框架里是没有的。但普通的定宽布局,YUI则显得有点麻烦,比如我们要实现四栏布局,dom得这样写:

先来两个两栏布局,再细分为四栏布局,清晰度上欠佳。

更多栅格实现

栅格化更多是一种布局思想,实现技术可以千差万别。比如今年冒出来的伪绝对定位,立刻就可以用来实现栅格系统。明城兄弟就尝试了一把。

肯定还有非常多的栅格化实现方案,这里就不一一挖掘了。

双飞翼栅格系统

挺奇怪这个名字?请先阅读这篇文章:渐进增强式布局探讨. 简单说,双飞翼布局是一种布局实现技术,可以利用它来实现一整套栅格系统。

先看test页面:Grids Layout Test.

具体技术细节在渐进增强式布局探讨一文中已经阐述,这里不再重复。有几点需要说明:

这套栅格系统并不能实现所有布局。这和YUI Grids类似,只能实现预定的一些布局。比如三栏布局,目前只加入了5 : 13 : 6, 5 : 12 : 7, 9 : 9 : 6, 8 : 8 : 8四种情况,这是从淘宝的现有页面中分析总结出来的。对于同一个站点来说,太多不同的三栏比例不是好事(淘宝目前都有点多,以后可能还会进一步统一)。因此如果采用这套栅格系统的话,需要先分析站点,定义出一套合适的比例。这里有个所有比例的自动生成工具:grids_css_generator.html.

关于命名:.grid-c2-s6表示两栏(c2: column 2)布局,sub栏的宽度是4列(s4: sub width is 4 * 40 -10). 而.grid-c2-s6f, 最后的f表示两栏布局的第二种情况,即sub和main互换。类似地,.grid-c3-s5e6d表示三栏布局,其中sub栏的宽度是5, extra栏的宽度是6, 最后的d表示是s5e6三栏布局中的第四种情况。

为了方便使用,将最常用的两栏布局.grid-c2-s5用.grid-c2直接表示。同样的,.grid-c3表示.grid-c3-s5e6. 这是淘宝的默认值,其他站点可以根据实际情况修改。

这套布局符合渐进增强式工作流程。细心的你可能已经发现,所有两栏布局和三栏布局,HTML中的DOM结构是完全一样的,只有最外层div的class不同。如果要交换左右栏,只要非常简单的修改下class就可以。

实际使用时,两栏布局和三栏布局已经够用。其实有了两栏,其它布局就都可以组合出来。这里有一个尝试性页面:grids_test4_v0.1.html. 组合布局看起来很强大,但实际使用时会把问题搞复杂,不推荐使用,干脆忘掉吧。

最后来看下两个测试页面:两栏布局grid-c2_test.html 和 三栏布局grid-c3_test.html.

目前除了发现在ie6下有个bug(超大图片等会撑乱布局,其实可以用overflow: hidden来解决,但考虑overflow的负面影响,最后还是由布局内部的模块来自主控制的好),尚未发现其他问题。

小结

栅格系统更多的是一种布局思想,在实际使用时,根据具体需求选用合适的技术来实现即可。需要注意的是,对于栅格的技术实现来说,太灵活未必是件好事,适度灵活最难得。怎么才能适度呢?这需要疯狂实践 + 不断的反思 + 持续的重构 + 悟…

栅格搭好了页面框架,接下来很重要的一件事情就是往里面添加内容模块。让内容模块规范化,让页面生成工业化,对大型站点来说,这是栅格系统最有商业价值的地方。下一篇也是本系列最后一篇将展示栅格系统中的模块化应用。

网页栅格系统研究(3):粒度问题

目前尚未严格遵守栅格系统,如果重构的话,宽度方向可以考虑采用下面的栅格布局(只考虑页面主体部分,忽略高度的比例):

(图1)

纷乱的高度世界

我们来看下图1左上角。左上角部分目前的宽度为256px, 重构的话可以将宽度缩小到230px以符合栅格(不可避免的要调整内容,比如人气宝贝中将只能放下3张图片)。来仔细看下高度方向:

(图2)

高度方向的布局是:90 : 117 : 100, 第一个间隔是8, 总高度为325. 很明显,高度方向没有任何栅格化的迹象。实际上,

即便是严格遵守栅格系统的Yahoo!首页,高度方向上也没有严格栅格化。

这究竟是为何?

一切皆有可能

我们缩小关注点:

(图3)

上图中,图像的大小是70 x 70, 刚好是24列960栅格系统两列的宽度。对于右边的文字,采取了如下样式:

font-size: 12px;

line-height: 150%; /* 12 x 150% = 18px */

中文字体是宋体,line-height的计算值是18px. 注意图3中文字部分可视区域的高度为65, 上下各有4px和1px的间隙。为什么会产生这么奇怪的间隙呢?我们来看下图:

(图4)

从上图中我们可以得知,12px的宋体中文字,实际高度只有11px.line-height减去11多出来的高度,则“均匀”分布在上下间隙中(如果多出来的高度为偶数,则上下均分;为奇数时,上面比下面多1px)。这样,对于70px的高度来说,要布局4行文字时,假设行高多出来的上半部分为x, 下半部分为y, 在最理想的情况下,应该满足以下公式:

11 * 4 + 4 * x + 3 * y = 70

x = y 或 x = y + 1

不难推出,x最理想的整数解为4. 从而line-height为 4 + 11 + 3 = 18. 因此:

对于24列960栅格系统来说,如果要在高度方向上实现栅格,font-size为12px时,line-height的最佳取值是18px(150%).

追求完美点话,还可以将文字部分margin-top: -1px, 使得65上下的间隙为3和2.

至此,我们可以初步判断:

高度方向上是有可能严格栅格化的。一切皆有可能!

然而,现实总那么残酷

(图5)

上图中的标题高度为22, 这在24列960栅格系统中是无法对齐的。而且总高度为100, 在24列960栅格系统中也不存在(110才可以)。或许高度方向上我们可以细化行宽为20, 但依旧没法解决上面两个问题(22是明显不能解决的,而对于100px的高度,也无法通过细化行宽来解决。可选高度永远是10的奇数倍,如果进一步细化, 小于10后,会变得非常繁琐,没什么实际应用价值)

宽度世界里会好些吗

(图6)

上面是Yahoo!首页上的两个小模块,我都不想去标注模块里面的布局宽度了(因为一点都不符合24列960栅格系统)。宽度世界里,和高度世界一样充满希望但现实却残酷无比。

银弹是不存在的

栅格系统是美好的。但如果我们一味地追求将所有设计都栅格化(必须承认我曾有这个幻想),则立刻会陷入地狱一般的黑暗中。这篇文章中的艰难尝试(我 分析了20多个小模块),让我突然醒悟到一个粒度问题:任何设计都有适用范围,超出最佳适用范围,强行使用只会带来无尽的烦恼。对于栅格系统(这里指所有 栅格系统,包括多种栅格系统混合使用的情景)来说,我觉得以下场景非常适合:

页面的总体宽度布局,比如两栏、三栏等布局

一些固定区块的尺寸,比如广告图片的尺寸

区块之间的间距,可以参考栅格系统的槽宽(Gutter)

一些可以栅格化的小区域,比如图3中的例子,暗合栅格往往能简化布局上的考虑

除了上面这些应用场景,强行使用栅格系统,往往会束手束脚,适得其反。这篇文章的目的,就是尝试用最啰嗦最费神貌似很科学实际很无聊的分析来指出栅 格系统应用时的粒度问题。在粒度问题上达成一致后,下一篇中我们将讨论栅格系统的技术实现,最后一篇则讨论栅格系统的压轴好戏:模块化开发。

网页栅格系统研究(2):蛋糕的切法

首先澄清一个应用场景问题。研究(1)中指出,对于结构复杂的网站,不少设计师们喜欢采用960固定宽度布局。但要注意的是,960并不是万能钥匙,大部分网站没有也不需要栅格系统。Amazon采用的是宽度自适应布局,最大限度的呈现信息。Google更是简简单单,主题部分就一个列表。eBay的页面非常简洁,商品页面宽度自适应,信息自然流畅,噪音少,购物很踏实。类似的站点还有很多,对于这些站点来说,宽度自适应布局更受青睐。

有个很有意思的网站是Yahoo!, 看起来是固定宽度布局,实际上在CSS中只要去掉一行,就能摇身一变自适应宽度了:

以下为引用的内容:

#page {

width: 70em;

}

为什么Yahoo!最后选择了定宽布局呢?这很可能是因为定宽布局比宽度自适应布局更容易控制。对于结构复杂的网站来说,可维护性和可扩展性非常重要。Yahoo!是以信息展示为主的门户型网站,960的宽度对于信息的阅读比较友善(Joe Clark写了一篇屏幕阅读时有关行长的有趣文章)。种种因素使得Yahoo!最后采用了定宽布局(Tommy Olsson总结了每种布局设计的优缺点)。

这里将只关注定宽布局,适用的场景是搭建复杂的门户型网站。对于宽度自适应布局和相应的栅格系统,暂不讨论(根据实现的技术手段不同,宽度自适应布局又分为流体布局和弹性布局。我个人蛮喜欢弹性布局,以后有时间再研究)。

好了,已经将范围缩小到定宽布局的网页栅格系统,那我们开始吧。

并不遥远的750

还记得800×600的显示器不?虽然才时隔几年,感觉却好像是上个世纪的事了。Mark Boulton做了最早的探索:

将750分割成均等的6份,这就形成了栅格系统,稍加组合划分就形成了两栏布局和三栏布局。Mark Boulton还研究了Gutter(垂直栏之间的间隙)对栅格的影响,有兴趣的可以阅读原文,或者跟着我往下看吧,下面将详细阐述。

几个术语和一个公式

一个标准的栅格系统,包括以下部分:

将Flowline的总宽度标记为W, Column的宽度标记为c, Gutter宽度标记为g, Margin的宽度标记为m, Column的个数标记为N, 我们可以得到以下公式:

W = c * N + g * (N - 1) + 2 * m

一般来说,Gutter的宽度是Margin的两倍,上面的公式可以简化为:

W = c * N + g * (N - 1) + g = (c + g) * N

将c+g标记为C, 公式变得非常简单:

W = C * N

上面的公式就是栅格系统的基础,很简单吧。

950的来历

具体应用时,Margin其实是一个空白边,从视觉上看并不属于总宽度。不少栅格设计里习惯性地设定Gutter为10px, 这样Margin就是5px. 当W为960,分割成6列时,栅格如下图:

上图的处理是左右Margin各为5px. 也可以将Margin集中放在一边,比如右边:

无论Margin放在何处(这只影响技术实现,不影响设计),我们真正要关注的是去除Margin之后的部分:

这就是我们要真正关注的950!将W的含义变为去除Margin的总宽度,公式变化为:

W = N * C - g

将上面的公式实例化一下:

950 = 12 * 80 - 10

950 = 16 * 60 - 10

950 = 24 * 40 - 10

这就形成了960蛋糕的三种常见切法。

12 x 80

16 x 60

24 x 40

上面三种切法,N越大,灵活度越高。可以根据网页的实际复杂度来选用对应的切法。在960 Grid System首页中,展示了12 x 80的应用:

我们来看下 研究(1)中开头列举的网站的栅格应用情况。

Yahoo!是很标准的 24 x 40 栅格:

淘宝网目前只有商城上部分使用了栅格系统(大的两栏布局遵守了 24 x 40 的栅格化,主体部分使用的另一套740的栅格划分):

网易很不错,采用的是 16 x 60 的栅格系统:

研究(1)中的其它站点都没有真正严格地采用栅格系统。

栅格系统的优势

上面的“发现”是让人有点沮丧的。目前严格采用栅格系统的站点非常少,为什么我们还要努力的让网页栅格化呢?

栅格系统具有以下优势:

能大大提高网页的规范性。在栅格系统下,页面中所有组件的尺寸都是有规律的。这对于大型网站的开发和维护来说,能节约不少成本。

基于栅格进行设计,可以让整个网站各个页面的布局保持一致。这能增加页面的相似度,提升用户体验。

对于设计师们来说,灵活地运用栅格系统,能做出很多优秀和独特的设计。(详见《超越CSS》一书)

对于大型网站来说,我相信栅格化将是一种潮流和趋势。

下面讨论栅格系统中的黄金分割。

黄金分割

黄金分割可以归结为数学问题:对于长度为1的线段,将其分成两部分 x 和 1 - x, 使得:

x / 1 = (1 - x) / x

化为简单的二次方程:

x^2 + x - 1 = 0

正数解为:

x = (sqrt(5) - 1) / 2 ~= 0.618

这就是黄金分割。这个比例不仅仅出现在诸如绘画、雕塑、音乐、建筑等艺术领域,在管理、工程设计等方面也有着不可忽视的作用。 (这是个自然界的魔数,类似的还有真空光速、普朗克常数、精细结构等等,感兴趣的Google吧)

在平面设计领域,黄金分割点被广泛采用。比如下面这种图:

数一数上面有多少黄金分割?

对于960栅格,实际宽度是950. 两栏布局时,黄金分割为:

对于 24 x 40 的情景,最接近黄金分割的两栏布局是 350 : 590, 栏数比例为 9 : 15. 但实际使用时,因为窄栏经常用来做导航或放辅助信息,并不需要350px这么宽。因此实际情况下经常被采用的布局是:

上面讲的都是宽度方向上的栅格化,下面我们看看高度方向上如何应用。

高度方向上的栅格

还记得研究(1)中那张红红的很刺眼的图吗?注意高度值560也是很神奇的。

N(560) = N(2^4 * 5 * 7) = 18

560 / 960 ~= 0.583

N(560)比较大,同时可以让高宽比接近黄金分割。针对560, 我们采用 14 x 40 栅格:

这样,我们就在宽度和高度两个方向上都实现了栅格化。

网页栅格系统研究(1):960的秘密

研究网页栅格系统前,来看一组数据:

网站       首页页面宽度 px

Yahoo!     950

淘宝        950

MySpace     960

新浪        950

网易      960

Live Search   958

搜狐         950

优酷      960

AOL      960

上面列举的都是Alexa全球排名前100的站点,它们的首页宽度为950px/960px. 除了微软的Live Search, 这些站点有个共同特点:页面结构较复杂,都可以认为是门户型网站。

再来看看Google, YouTube, Facebook, Flickr!, eBay等知名站点,它们的首页宽度没什么固定规律,共同的特点是:功能专一,页面结构相对简单。

根据上面的简单分析可以认为:当搭建页面结构复杂的门户型网站时,开发工程师们不约而同地都选择将页面宽度定为950px/960px.

这是一件很有趣的事情,为什么要选择这个宽度呢?这个宽度值究竟有什么魔力?

神奇的960

设计师们对苹果情有独衷。在 1024 x 768 的分辨率下,打开Firefox:

自然状态下,Firefox窗体的大小约为 974 x 650. 减掉左右两边7px的边框,网页的实际大小为上图中的红色部分,高宽为 960 x 650.

有趣的960就这样出现了。是的,可以认为一切就这么简单。栅格系统最早出现在平面设计领域,设计师们爱用苹果,苹果下浏览器的默认宽度为960px, 于是960就这么“自然”地出现了。

数字背后的奥妙

上面的“自然”出现,细究自然是不让人信服的。苹果系统的设计者们在没有喝醉酒的情况下选择了960,而不是其它什么1000之类的整数,自然另有奥妙。

科学界有很多问题都可以归结到数学问题上,我们也从数学着手:

960可以分解为2的6次方乘以3和5, 这使得960可以分割成以下宽度的整数倍:

以下为引用的内容:

2, 3, 4, 5, 6, 8, 10, 12, 15, 16, 20, 24, 30, 32, 40,

48, 60, 64, 80, 96, 120, 160, 192, 240, 320, 480

共26种(26 = 7 * 2 * 2 - 2, 减去2是去掉1和960自身),我们标记为:

以下为引用的内容:

N(960) = N(2^6 * 3 * 5) = 26

根据上面的算法,可以得到:

以下为引用的内容:

N(360) = N(2^3 * 3^2 * 5) = 22

N(480) = N(2^5 * 3 * 5) = 22

N(720) = N(2^4 * 3^2 * 5) = 28

N(750) = N(2 * 3 * 5^3) = 14

N(800) = N(2^5 * 5^2) = 16

N(960) = N(2^6 * 3 * 5) = 26

N(1000) = N(2^3 * 5^3) = 14

N(1024) = N(2^10) = 9

N(1440) = N(2^6 * 3^2 * 5) = 34

N(1920) = N(2^7 * 3 * 5) = 30

根据直觉(严格证明也不难,不过还是留给数学系的学生去证明吧),我们得到一个有趣的结论:

要使得N(width)最大,width的取值有两个系列:

A系列: …, 320, 720, 1440, …

B系列: …, 480, 960, 1920, …

N越大,可组合的宽度值就越多。对栅格系统来说,这意味着越灵活!

目前绝大多数显示器都支持 1024 x 768 及其以上分辨率。为了有效的利用屏幕宽度同时保证栅格的灵活度,可以看出960是非常合适的。这样,在目前主流显示器下,960就成为网页栅格系统中的最佳宽度了。(也许不久的将来,将会流行1440)

细心的你也许会记得,本文开头列举的宽度值中,950也出现了好几次。950是怎么来的?和960是啥关系?这些疑问,请关注本系列的下一篇文章。

备注:本系列文章收集于网络,转载仅作学习使用。

Div中内容垂直居中

在网站界面调试的时候,时常会遇到div居中的问题。而垂直居中是有点小窍门的。
请看。
使用行高(line-height):
使用line-height内容行高等于DIV高度即可。
代码例子:

text-align: center;
line-height: 90px;

我通常都是用这种方法解决问题的。

------------分隔线--------------

下面附网上看到的一些方法:
原文:http://dreamweaver.abang.com/od/divcss/a/vertical-align.htm
虽然Div布局已经基本上取代了表格布局,但表格布局和Div布局仍然各有千秋,互有长处。比如表格布局中的垂直居中就是Div布局的一大弱项,不过好在千变万化的CSS可以灵活运用,可以制作出准垂直居中效果,勉强过关。

要让div中的内容垂直居中,无非有以下几种方法,等我一一列举:
一、行高(line-height)法
如果要垂直居中的只有一行或几个文字,那它的制作最为简单,只要让文字的行高和容器的高度相同即可,比如:

 
p {
 height:30px;
 line-height:30px;
 width:100px;
 overflow:hidden; }

这段代码可以达到让文字在段落中垂直居中的效果。
二、内边距(padding)法
另一种方法和行高法很相似,它同样适合一行或几行文字垂直居中,原理就是利用padding将内容垂直居中,比如:

p {
 padding:30px; 
}

这段代码的效果和line-height法差不多。
三、模拟表格法
模拟表格法其实就是用CSS中对元素的声明让块元素像表格一样显示,用到的CSS属性有display、vertical-align等。 先看下面的Html代码:

 
居中显示

参照以上Html代码,让最外面名为box的Div呈表格样式显示,然后再让box中名为content的Div呈单元格显示,并利用vertical-align:middle让其垂直居中,这样就模拟出来和表格一样的显示方式,CSS代码如下:

 
#wrap {
 height:400px;
 display:table; 
} 
#content {
 vertical-align:middle;
 display:table-cell;
 border:1px solid #FF0099;
 background:#000;
 width:400px; 
}

但这种方法有一个弊端,由于IE浏览器对高度理解会产生错误,所以这种方法仅对Firefox有效,对IE无效,既然这样,我们就需要找出对IE的修正方法,于是有了另外一种方法。
四、定位法
顾名思义,定位法是利用CSS定位属性position对元素进行定位的方法,也属于模拟方法,不过它对IE的支持还是不错的。 它的Html代码为:

垂直居中

这段代码比上一种方法中多出了一个名为sub的Div,它的作用是用来定位,原理就是:首先让box出于相对定位,sub相对box出于相对定位,位于box垂直方向的50%,再让content中的真正内容出于sub垂直方向的-50%,从而制作出content在box中垂直居中的效果,它们的CSS代码如下:

#wrap {
  border:1px solid #000;
 background:#F00;
 width:400px;
 height:400px;
 position:relative; 
} 
#subwrap {
 position:absolute;
  top:50%; 
} 
#content {
 border:1px solid #000;
 position:relative;
 top:-50%;
 color:#FFF; 
}

这段代码无论是在IE中还是Firefox中,都能正常居中了。
-----------分隔线----------------

至此,本文结束。

IE8中开发人员工具中[单击选择元素]按钮无效的解决方法[转载]

image

IE8中开发人员工具中[单击选择元素]按钮无效的解决方法

原标题:IE8中开发人员工具出现的问题以及解决办法

这个问题,在网上找了许久,感谢石头居同学提供的方法,问题才得以解决。

转载此文给需要的人。
原文地址:http://www.cnblogs.com/StoneGarden/archive/2010/04/11/1709335.html

以前是在IE7上使用IE Develop ToolBar,对于开发工作起到了非常大的作用。听闻IE8中加入了该工具,并且对这个工具做了一些功能升级。于是,安装IE8。

安装了IE8,使用其自带的“开发人员工具”,在点击快速工具栏中的第一个图标为小箭头的按钮(也就是“查找”-->“单击选择元素”菜单项)后,再点选网页中的内容时,发现虽然在被选择HTML元素上已经有蓝色选择框,但是在“开发人员工具”左侧文本区域并没有自动跳转到被选择的HTML元素的内容。如下图所示。

image

从上图可见,

第一,我已经开启了“单击选择元素”功能,即位置2的红色方框所示;

第二,我选择了网页上的一个HTML元素,即位置1的红色方框所示;

第三,在“开发人员工具”的文本框处,并没有定位到我选择的HTML元素所对应的HTML代码,即位置3的红色方框所示;

上网搜索了一堆资料,逐个尝试,最后发现,是因为安装了Flashget后,IE的加载项中,启动了FlashGetBHO加载项导致了这个问题,处理办法也很简单,禁用该加载项,具体做法如下:

第一,打开IE;

第二,选择IE的工具菜单,点击“internet选项”;

第三,在“internet选项”对话框中,选择“程序”页签;

第四,在“程序”页签中,点击“管理加载项”按钮;

第五,在“管理加载项”对话框中,找到“FlashGetBHO”条目,点击对话框右下角的“禁用按钮”,具体步骤如下图所示

image

 

 

完成上述五步操作后,关闭IE,重启启动IE浏览器,可以看到问题解决了。如下图所示

image

DIV+CSS中标签ul ol li dl dt dd用法与区别

平时有时候用到div和css对网站界面进行重构,经常会用到标签ul ol li dl dt dd ,这些标签常用于列表显示内容.
学会这几个标签的用途,了解一下他们的区别,对网站代码和加载速度都有很有益处的.
下面,简单说一下.

ul 标签定义无序列表。
实例:


  • Coffee
  • Tea
  • Milk

ol 标签定义有序列表。
实例:


  1. Coffee
  2. Tea
  3. Milk

li 标签定义列表项目。
li 标签可用在有序列表 (ol) 和无序列表 (ul) 中。
实例:


  1. Coffee
  2. Tea
  3. Milk
  • Coffee
  • Tea
  • Milk

dl 标签定义了定义列表(definition list)。
dl 标签用于结合 dt>(定义列表中的项目)和 dd (描述列表中的项目)。
实例:


计算机
用来计算的仪器 ... ...
显示器
以视觉方式显示信息的装置 ... ...
dt 标签定义了定义列表中的项目(即术语部分)。 实例:
计算机
用来计算的仪器 ... ...
显示器
以视觉方式显示信息的装置 ... ...
dd 在定义列表中定义条目的定义部分。 实例:
计算机
用来计算的仪器 ... ...
显示器
以视觉方式显示信息的装置 ... ...

在浏览器兼容中li和a标签属性设置中width和height的问题

今天遇到一个很奇怪的问题。

在浏览器兼容调试中,遇到这样的情况

在这样的代码中


只在对li的属性width或height进行设置
就会出现对IE的兼容问题,出现错位和其它莫明的问题。
因为本身自己对CSS不太熟悉,就没有深究,
只是知道,
把对li的设置,转移到a标签中即可解决这个问题。
在此记下,以后遇到备查使用。

在使用WORDPRESS建立商业网站时你需要了解的?[转载]

读了这篇文章,很有感触,分享给大家。

以下是原文:

原文地址:http://www.wheatv.com/2002.html  作者:badjohnny (网页设计师)

在使用WORDPRESS建立商业网站时你需要了解的?

在玩WordPress的4年里,目睹WP的功能越来越强大的同时,也感受到了WordPress越来越臃肿复杂,不再是曾经众多博主所认为的简单易用,尤其对于很多完全陌生的新手来说,诸多WP专用的术语也一知半解,比如“自定义字段”,“自定义缩略图”,“自定义表单”……这么多的自定义也表明WordPress正逐渐走向一个强大的准CMS系统了,也正因为功能的强大和众多的开发者提供的资源,很多人开始选择用WordPress建立自己团队或者公司的垂直资讯网站或者企业网站了(如36氪、Tech2ipo等等),但犹豫对WordPress诸多功能和特性的不了解,都造成了很多使用的不便,甚至是网站架构的失误,在此将总结一下这段时间里曾找我设计和开发过主题的朋友经常咨询到的一些问题,供有计划使用WordPress建立商业网站的朋友们参考。

你的网站是否适合使用WordPress搭建?

这是在网站搭建之初必须笼统要考虑到的,会影响到网站今后的维护和升级扩展。简单的说,考虑是否适合和用WordPress来做网站,首先得看网站类型,如果是以内容展示为主的网站,这是WordPress的强项,正如它的介绍中所提到的“Publish Platform-内容出版平台”,但如果要建立一个社区性质的网站,可要知道WordPress的会员功能其实非常弱,当然简单的讨论小组什么的也完全可以利用bbpress和buddypress来实现,这主要是界面的定制问题了,但如果你需要的会员功能较复杂的时候,比如你需要引入积分功能,像Discuz的任务模块、各种Web应用的话,使用WordPress就十分费事了,虽说完全可以通过二次定制来开发出来,但相比在此方面更为强大的drupal,何不选用后者,或者其他功能需求更为接近适合的开源程序呢?谈及这点,是因为曾遇到不少朋友用WordPress建站进行到一半的时候,发现某一点上可能WP并不适合,进退两难。

同时还要考虑到如果今后希望扩大规模时,WordPress的架构是否能轻松应付,降低开发成本,并且能承载一定的流量,也是要考虑进去的,因为据很多使用VPS的朋友反映,WordPress安装在服务器上挺消耗资源,这个我没有实际测试过,仅在此提及一下。所以在确定使用WordPress建立商业网站之前,需要对WordPress的功能、特点有全方面的了解。

明白WordPress主题设计开发的实质

我想说的是在WordPress越来越强大的同时,也许主题的开发并不是很多新手所认为的简单的模板制作,套上PHP各种标签函数等就可以的,如果你需要做的网站需要定制很多应用化的东西,比如通过后台设置可以实现同步微博到网站指定区域、广告管理、用户注册投稿等,实际上都是插件开发的过程,只不过这个主题中将所有插件的功能全部集成到一个主题文件夹中了。通常这类网站可以理解为是一个基于WordPress的Web应用,并且集成了各种前端应用。明白主题开发的实质,将有益于和开发者沟通出对双方都更加合理的价格。

为了让你的网站构思有更多可想象空间,你要知道的WordPress进阶使用技巧

这里说的常用技巧并不是说如何发布文章、发布图片等,而是进阶使用技巧,当然如果网站架构的很简单的话,可以忽略这些。除了基本的自定义菜单如何使用、特色图片设置以外,你最好还要知道如何去使用页面模板功能,短代码自定义功能等等,当然这些具体取决于你所使用的主题是否有这些功能。因为这些功能基本在稍微有些难度的网站上,都会体现,比如利用页面模板来实现单页面的差异化、不同分类拥有不同的列表页样式等等。而短代码则如同大多数用过DISCUZ论坛的朋友所知道的UBB代码一样,你可以用实现封装好布局样式、数据调用方式的短代码来实现更加自由的版式调整和数据读取。因为本篇文章不是教程,因此仅在此将常用技巧罗列于下,有兴趣了解的朋友可以借助Google来学习研究一下。如果你对这些东西了如指掌的话,对你去策划一个网站会有更大的想象空间,所以至少要知道有这么回事。

  • 自定义导航菜单的设置
  • 文章特色图片的添加设置
  • 自定义字段使用的了解
  • 页面模板绑定
  • 短代码的功能意义
  • 必要的话,要对WordPress的一些功能接口有所了解(当然这个可以与专业的开发者去咨询)
将网站的构思和WordPress系统对接分析

也许在经过一阵头脑风暴后,对网站整体已经有了较清晰的构思,甚至已经画出了各个页面的简易框架示意图了,此时要做的,是将你的构思讲给开发者,开发者会通过自身对WordPress现有的功能和底层架构来分析哪些需求是可行的,哪些是不可行的,此时需要通过沟通来协商出最佳方案,如果说上面谈到的第一步是需要自己大致笼统的了解WordPress能干什么,那么这一步的目的就是讲这种分析深入到需求的每个细节之处。

在反复论证之后,确认了基本所有最初的需求都能在WordPress上找到解决方案或者折中方式后,就可以真正开始网站的开发了,但别忘了,整个项目的进行,不是设计师、工程师单方面的事,作为需求方一定要及时跟进,及时反馈自己的想法,避免出现理解偏差导致返工现象或者合作不下去的情况。

一个WordPress主题的开发过程

首先是设计,页面设计可以分为两个范畴,风格设计和具体的PSD实现。其中风格设计是大多数用户会忽略的,比如有人会指着某个网站告诉我,我希望类似与他这样的,挺简单的。实际上这种简单仅能说明PSD实现的难度很简单,比如极简化的风格画起来确实要比画一个游戏专题页面省事的多。但这个东西在PSD画布上实现之前,是需要设计师在脑子里通过分析需求和想象借鉴去形成某种风格、版式的,那这个比较抽象的过程在我理解就是风格设计的过程。因此通常WheatV Themes报价时,也会将风格设计的费用加进去。风格设计主要体现在首页,在风格形成后,其他页面基本就是延续主页的风格继续在PSD中逐步完全的过程了

接下来是前端开发。简单的理解是将PSD设计稿用HTML+CSS去实现成一个个的静态网页。但前端开发的难度也会根据交互的需求而变化,同时要兼容各种主流浏览器,或者要通过W3C验证。前端可以分为三个层面的实现,表现层(即样式的实现)、结构层、行为层。因此前端工程师们也同样是很辛苦的,所以通常在开始前端制作的阶段,是很少有人愿意允许用户再继续反复修改设计的,因为这无异于将一栋楼盖起来后,你觉得楼梯应该放在右手边更好,结果不得不局部甚至全部拆掉重新来。所以,在设计阶段一定要沟通确定的更加彻底一些。

最后就是WP开发了。PHP程序员会将前端的静态页面大卸八块,大致分为header,footer,sidebar等等的区域模块,然后通过各种PHP和WordPress所提供的函数、Hook来实现主题对数据的动态调用,复杂的主题一般还会在后台扩展出主题控制面板和自定义字段控制面板,通过图形化的界面让用户更加容易实现各种操作。在全部开发完毕后,要详细去测试各项功能,并及时反馈,协商解决。至此,基本的开发过程就结束了。

希望此篇文章能对有WP建站需求的朋友有所参考和启发的作用,也希望对WordPress不是很熟悉的朋友对主题开发有一个更加清晰的了解。