CSS入门以及<div>排版

0 篇文章 0 订阅

HTML的各种标签,提供了更好的网页结构以及更多的功能。


而CSS则提供了(批量)格式编辑的可能。


<body>
    <h1 style="font-size: 6px; text-align: center; color: red;">一级标题</h1>

    <p style="background-color: yellow;">
正文
<a href="www.163.com">网易首页</a>
<br />
<a href="www.sina.com">新浪首页</a>
</p>

</body>


例如对于上面的例子,可以讲繁杂的 style="……" 部分更改为在<head>中先行定义CSS,以保持<body>内部代码的简洁。

更改后:


<head>
    <meta http-equiv = "content-type" content = "charset=utf-8;" />
    <title>测试页</title>
    <style>
</pre><pre name="code" class="html">h1{
    font-size: 6px;
    text-align: center;
    color: red;
}

p{
    background-color: yellow;
}

    <span style="font-family: Arial, Helvetica, sans-serif;"></style></span>
</head>

<body>
<h1>一级标题</h1>
<p>正文</p>
<a href="">链接1</a>
<a href="">链接2</a>
</body>

当然也可以更进一步,把<head><style>中的代码放入一个外部的.css文件,使得整个HTML文档变得更简洁,更方便后期维护。例如,放入下面的:test.css


h1{
    font-size: 6px;
    text-align: center;
    color: red;
}

p{
    background-color: yellow;
}

之后再在刚才的HTML中<head><link>标签添加这个CSS文件(仅截取<head>部分):

<head>
<meta http-equiv = "content-type" content = "charset=utf-8;" />
<link rel="stylesheet" type="text/css" href="test.css">
<title>测试页</title>
</head>

HTML中的代码瞬间变少了许多。

CSS在对文档进行批量编辑的时候更能大幅减少代码的使用量。为了进行批量编辑,则需要引入HTML标签中class和id的概念。


class就是进行分类,id就是对其中的某一元素进行细化定义。一般来说,一段文件内不能有两个相同的id定义两个不同的部分。在CSS中,影响体现不是很明显,CSS会对所有相同id的区域更改格式,但之后的javascript部分会有较大影响。

那么如何使用class和id呢:


<body>
<div class="testclass">
测试分类
    <div id="testid">测试id</div>
</div>
</body>

这样就可以啦。然后在CSS文件中更改他们的格式。在每个"class"的名字前面加上一个英文的句号".",在每个ID名字前面加上一个井号"#"。


.testclass{
    color: red;
    font-size: 20px;
    text-align: center;
}

#testid{
    text-align: left;
    font-size: 10px;
    background-color: black;
}

此时testid中的文字颜色应该仍然为红色,这是由于CSS的继承制度。在内部标签没有特殊说明的时候,上一级会自动继承到下一级。

另一种可能遇到的重复性冲突是在CSS文件中、<head>标签、<body>中都有定义,此时以<body>中的优先,<head>中其次,外部引用的CSS文件排在最后。如果在同一部分中不小心对同一元素定义了两次,那么根据HTML和CSS从上到下的读取顺序,在后面的定义将会取代在之前的定义,因此会以后定义的为准。



div+CSS也可以用于,也普遍用于现在的网页框架排版。取代了曾经流行的<table>排版方式(表格<table>排版是将整个网页切分成一个大的表格,利用调整表格的行宽、列高、空白单元格、表格嵌套等来进行排版。缺点在于文件较大?而且层次杂乱不易维护。有点应该是在各个浏览器支持都比较不错?不过现在div+CSS的支持应该也基本没问题了)。好像还有一些<frameset>+<frame>以及<iframe>的排版方式,具体不了解。

下面是<div>+CSS的框模型简介(图片来自W3school.com.cn):

框模型原理

框模型(Box model)也译作盒子模型,原理就像摆放在商店的礼品盒。margin定义的是礼品盒与礼品盒之间的距离,border是盒子的厚度(HTML中设置为0即隐藏边框线),padding是礼品盒内部包裹着礼品的装饰物/保护垫的厚度,而定义的height和width只是这正内部内容的高度和宽度。内外边距以及边框的颜色和厚度都可以更改。具体示例请参阅W3school


顺便说一下,大部分标签比如<div>以及<p>都是默认width: 100%的(这个百分比是继承自上一级的宽度,或者是整个页面的宽度),因此排版时如果需要几个<div>并排排列,需要在CSS中更改

width: 50%; display: inline-block; float: left;

其中float是相当于将此元素紧靠某一边排列,以免其占据整行。具体更细节更高级的操作还需要查阅W3School上面的说明,这里也不做详细介绍了。


关于HTML、CSS就先更到这里。接下来计划开始介绍一点javascript 的用法吧。【边学边更】

XHTML 40个例子显示的内容一样,通过CSS实现不一样的布局效果, 是学习div + css排版的绝佳教程.body标签内的内容如下: Header 1) Content here. column long long column very long fill fill fill long text text column text silly very make long very fill silly make make long make text fill very long text column silly silly very column long very column filler fill long make filler long silly very long silly silly silly long filler make column filler make silly long long fill very. very make make fill silly long long filler column long make silly silly column filler fill fill very filler text fill filler column make fill make text very make make very fill fill long make very filler column very long very filler silly very make filler silly make make column column fill long make long text very make long fill column make text very silly column filler silly text fill text filler filler filler make make make make text filler fill column filler make silly make text text fill make very filler column very column text long column make silly long text filler silly very very very long filler fill very fill silly very make make filler text filler text make silly text text long fill fill make text fill long text very silly long long filler filler fill silly long make column make silly long column long make very 2) Navigation here. long long fill filler very fill column column silly filler very filler fill fill filler text fill very silly fill text filler silly silly filler fill very make fill column text column very very column fill fill very silly column silly silly fill fill long filler 3) More stuff here. very text make long silly make text very very text make long filler very make column make silly column fill silly column long make silly filler column filler silly long long column fill silly column very Here it goes the footer
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值