分类“图书勘误与补充材料”的存档

«上一页 | 共 2 页: « 1 [2]

《精通CSS+DIV网页样式与布局》光盘中的一个勘误信息

2007年09月05日 星期三

请注意,《精通CSS+DIV网页样式与布局》光盘的中的实例代码发现如下问题。

在这些实例的.html文件代码中,我们不知道在哪个环节出错,都加入一段无关的CSS样式代码。

请读者在使用的时候,学习html文件的时候,把第二段〈style〉和〈/style〉之间的代码删除,就是正确的代码了!如果读者熟悉Dreamweaver,可以用“替换”功能一次性删除这段多余代码。

给读者带来不便,请见谅。

另外,如果您看到你买的书是第2次印刷的,则光盘上的代码是正确的代码,不存在上面所述的问题。

关于《精通CSS+DIV网页样式与布局》10.3.2节的补充说明

2007年08月19日 星期日

关于Position定位问题,在这里给出一些补充说明。

书中第10.3.2节正文的第二段中谈到,通过Position属性对DIV块进行定位,一共有4种方式:static、absolute、relative和fixed。

其中,statics(静态)为默认值,表示DIV块呆在他原本应该在的位置;relative(相对)表示DIV块以它自己的位置为基础,移动一定的偏移量,从而形成实际显示位置;fixed(固定)表示一个DIV快固定在浏览器窗口的指定位置,不随页面滚动而变化。上述三项,没有需要补充说明的。

现在来说说absolute(绝对)方式的定位。书中谈到,使用absolute方式时,DIV块会脱离它原本应该在的位置,而以页面body为基准,移动一定的偏移量,从而形成实际显示位置。这里要补充的是,这个说法实际上是对CSS2的规范进行一定的化简以后的说法。严格的说法是,如果一个DIV块使用absolute定位方式,那么他是相对于距离它最新的“包含块”(或者叫“包含盒”)进行定位的

这里有个两个概念需要解释:

1:什么叫“包含块”呢?“包含块”就是设置了非static值的position属性的DIV块

2:什么叫作“最近”呢?最近是指从需要定位的DIV开始,查找它的父DIV,如果它不是包含块,在查看它的祖父DIV,如果它也不是包含块,再向上寻找,如果一直到body标记,都没有找到设置了非static值的position属性的DIV块,那么就以body作为它的定位基准DIV。

根据上面的定义,检查书中第246页,实例10.20的源代码,在#father的CSS中,没有设置position属性,因此它不是包含块,再向上,已经没有其他DIV块了,因此根据上面说的第二条解释,#blcok这个DIV的定位基准就是body标记,也就是书中说的,是相对这个页面来进行的定位的。

现在可以来做一个实验,如果在#father的CSS定义中,增加一条 position:relative ,然后再在浏览器中查看效果,就会发现,#block这个DIV会右移了,其中的原因就是#father这个块成为“包含块”了,并且是#block这个DIV的祖先,因此,#blcok就会以它为定位基准,而不是以body为定位基准了。

好了,上面的道理都讲完了,下面给读者朋友出一个题目,看看您是否真的理解了上面的说明。

题目:下列哪一项最好地描述了绝对定位?
选项:A. 后面的文本相对于盒子左边或者右边位置,围绕定位的盒子流动。
B. 即使页面滚动,盒子也保持在相对于定位的位置上。
C.相对于盒子原本的位置,偏移一定的距离。
D.盒子相对于包含盒放置。

请大家思考一下吧?答案应该是哪一个?

关于《精通CSS+DIV网页样式与布局》8.2节的补充说明

2007年08月15日 星期三

《精通CSS+DIV网页样式与布局》书中8.2节介绍了使用项目列表制作菜单的方法。其中谈到,将链接设置为块级元素之后,鼠标进入矩形区域都会触发hover事件,在Firefox和IE7.0浏览器中,可以实现,但是在Ie 6.0中,没有完全符合CSS 2的规范,仍然只有鼠标移动到链接文字上的时候,才能触发hover事件。这里给出一个解决方案:

在#navigation li a {……} 中加一条规则: “width=200px”; ,就可以了。这个200就是前面#navigation这个DIV的宽度。

完整的代码如下:

#navigation li a{
display:block; /* 区块显示 */
width:200px; /* 修复IE 6.0的bug */
padding:5px 5px 5px 0.5em;
text-decoration:none;
border-left:12px solid #711515; /* 左边的粗红边 */
border-right:1px solid #711515; /* 右侧阴影 */
}

这样就可以使IE 6.0产生正确的效果了。

《精通Dreamweaver 8》中的一处补遗

2007年07月30日 星期一

《精通Dreamweaver 8》一书中,第39章第1节,590页第11行: “而且最新的留言在最前面” ,可到本实例的具体讲解中没有实现这个功能。因此,我们在这里补充一下具体的正确做法:

在本书第592页,第(5)步,选择的conn连接以后,表格下拉框会默认选中“guestbook”表格,书中到这里就直接按“确”定按钮了,这样就没有实现排序。实际上要实现“最新留言在最前面”的本质是:使记录集中的记录按照添加时间排序,并且降序排列。因此这确的做法是,在按确定按钮之前,在图39.7的下侧“排序”下拉框中选择“addTime”,然后再它旁边选择“降序”,然后再按确定按钮。这样就可以实现最新的留言在最前面了。

«上一页 | 共 2 页: « 1 [2]