wordpress 主题一步步制作教程!第22课 样式化侧边栏(图解)

在对侧边栏样式化之后,这系列教程将几乎完成了。以后我将通过案列学习来进一步探讨(详细解释我如何创建我的主题)。

再一次,你今天不需要 index.php 文件。打开 Xampp,主题文件夹,Firefox,IE 和 style.css 文件。

 

第1步

.sidebar{} 下输入:

.sidebar ul{
list-style-type: none;
margin: 0;
padding: 0 10px 0 10px;
}

现在你已经为侧边栏样式化父级无序列表(UL)标签。所有的子 ULs 或者内嵌的 ULs 将会击继承同样的样式。在这里,它是无列表样式,零空白和10像素的填充。

如下所示:

inheritance.gif

第二级的(或内嵌的) UL 继承了第一级 UL 的样式。如果你给了第一级 UL 应用了边框,第二级的 UL 同样也会有个边框。

保存并刷新就可以看到列表条目现在已经没有前面的圆点了。

注意下你是如何增加顶部和底部填充的。

no-top-padding.gif

第2步:

.sidebar ul{} 下输入:

.sidebar ul li{
padding: 10px 0 10px 0;
}

这是现在的填充:

top-padding.gif

为什么不在第一个地方的 UL 标签增加10像素的填充呢?你需要一种区分 LI 同其他 LI 的方法。在给 .sidebar ul li{} 增加填充之前,在搜索框日历之间以及日历页面之间是没有空间。在每个模块之间的空间就是为 .sidebar ul li{} 添加的10像素顶部和底部填充起的作用。如果给 UL 标签添加了四个方向的填充而不仅仅是左边和右边(0 10px 0 10px),那么你将会有20像素的顶部填充和20像素的底部填充在区分 LI 的时候,明白我在讲什么吗?

如果不明白,那么就去给 .sidebar ul{} 增加顶部和底部填充。

第3步

.sidebar ul li{} 下输入:

.sidebar ul li h2{
font-family: Georgia, Sans-serif;
font-size: 14px;
}

还记得样式化在 .post{} 下的子标题是不会起作用的因为你是在仅仅在样式化在 .post{} 下的子标题?现在你在样式化侧边栏下的不受影响的子标题,结果如下:

h2-and-unnecessary-padding.gif

这就是我的页面链接的样子。你的可能只有一个链接, About。我给我的离线 WordPress 增加了多重页面链接为了测试最低级别的链接看起的样子,注意到不必要额外的填充在底部,我已圈出。这是一个非常好的关于样式继承的例子。这里不是10像素而是20。

因为你给 .sidebar ul li{} 增加了填充,为了解决这个问题,直行第4步。

第4步:

.sidebar ul li h2{} 下输入:

.sidebar ul ul li{
padding: 0;
}

.sidebar ul ul li{} 中连续的 UL 指明了你是在定义第级别的 LIs。再说一次,当所有的值都为 0 的时候,你不需要 px 这个后缀。

结果如下:

ul-ul-li.gif

行距太近了,所以我们把行高改成 24px。

增加 line-height: 24px;.sidebar ul ul li{}.

line-height.gif

另外,如果你在 IE 下,搜索框下有多出了额外的空白,在下面增加 form:

body, h1, h2, h3, h4, h5, h6, address, blockquote, dd, dl, hr, p{
margin: 0;
padding: 0;
}

改成:

body, h1, h2, h3, h4, h5, h6, address, blockquote, dd, dl, hr, p, form{
margin: 0;
padding: 0;
}

第5步(可选的)

执行这一步,如果你想让你的日历的数据能够扩展并覆盖整个侧边栏的宽度。当前你的日历应该是这样的:

calendar1.gif

为了样式化日历,找出在里面的标签和这个便签的名字或者 id。 查看 > 页面源代码或者源代码。你的侧边栏是在底部,所以到源代码的底部查找 Calendar。

caledar-id.gif

现在你知道日历是在一个 TABLE 标签中并以 wp-calendar 作为 id。那么如何在 style.css 文件中锁定 wp-calendar table 呢?

答案是 table#wp-calendar{}。为什么?早前,你学了使用 # 号当样式化使用 id 而不是 class 命名的 DIV。在这里,是 table 而不是 DIV,跟着是 id 的值,wp-calendar

如果仅仅 #wp-calendar{} 也是可以的因为它是唯一的而且 WordPress 不会使用 #wp-calendar 给别的标签。但是你应该试着特定化当能够的时候。如果要更加特定化 使用 .sidebar ul li table#wp-calendar{},想更加特定化?好的,使用 .sidebar ul li#calendar table#wp-calendar{}. 因为列表条目(LI)包含日历子标题和一个 id 被命名为 calendar 的日历表格。

现在你知道可以使用什么,如何怎么扩展 table,给表格加上 width: 100%;

.sidebar ul ul li{} 下输入:

table#wp-calendar{
width: 100%;
}

保存和刷新,结果如下:

calendar-width.gif

width: 100%; 因为你想日历表格适应到侧边栏的宽度,无论你把侧边栏改成多少像素。

这看起来并不好,但是你正在学习如何改进。日历需要更多的样式去看起来更好。技巧:再次查看源代码,找出在 TABLE 下的哪个标签你可以样式化。

这篇到此为止。

本文转自“我爱水煮鱼”

原文地址:http://fairyfish.net/2007/07/07/wp-theme-lesson-13-styling-sidebar/

About sosel

Comments

发表评论

电子邮件地址不会被公开。 必填项已用*标注