DIV+CSS基础教程

DIV+CSS基础教程

第一节  了解DIV+CSS

一、什么是DIV+CSS

DIV元素是html(超文本语言)中的一个元素,是标签,用来为HTML文档内大块(block-level)的内容提供结构和背景的元素。DIV的起始标签和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素的特性由DIV标签的属性来控制,或者是通过使用样式表格式化这个块来进行控制。

css是英语Cascading Style Sheets(层叠样式表单)的缩写,它是一种用来表现 HTML 或 XML 等文件式样的计算机语言。

DIV+CSS是网站标准(或称“WEB标准”)中常用术语之一,通常为了说明与HTML网页设计语言中的表格(table)定位方式的区别,因为XHTML网站设计标准中,不再使用表格定位技术,而是采用DIV+CSS的方式实现各种定位。

HTML语言自HTML4.01以来,不再发布新版本,原因就在于HTML语言正变得越来越复杂化、专用化。即标记越来越多,甚至各个浏览器生产商也开发出只适合于其特定浏览器的HTML标记,这显然有碍于HTML网页的兼容性。于是W3C组织进而重新从SGML中获取营养,随后,发布了XML,XML是一种比HTML更加严格的标记语言,全称是可扩展标记语言。但是XML过于复杂,且当前的大部分浏览器都不完全支持XML。于是XHTML这种语言就派上了用场,XHTML语言就是一种可以将HTML语言标准化,用XHTML语言重写后的HTML页面可以应用许多XML应用技术。使得网页更加容易扩展,适合自动数据交换,并且更加规整。

二、DIV+CSS的优势

1、符合W3C标准。这保证您的网站不会因为将来网络应用的升级而被淘汰。

2、对浏览者和浏览器更具亲和力。由于CSS富含丰富的样式,使页面更加灵活性,它可以根据不同的浏览器,而达到显示效果的统一和不变形。这样就支持浏览器的向后兼容,也就是无论未来的浏览器大战,胜利的是什么,您的网站都能很好的兼容。

3、使页面载入得更快。页面体积变小,浏览速度变快,由于将大部分页面代码写在了CSS当中,使得页面体积容量变得更小。相对于表格嵌套的方式,DIV+CSS将页面独立成更多的区域,在打开页面的时候,逐层加载。而不像表格嵌套那样将整个页面圈在一个大表格里,使得加载速度很慢。

4、保持视觉的一致性。以往表格嵌套的制作方法,会使得页面与页面,或者区域与区域之间的显示效果会有偏差。而使用DIV+CSS的制作方法,将所有页面,或所有区域统一用CSS文件控制,就避免了不同区域或不同页面体现出的效果偏差。

5、修改设计时更有效率。由于使用了DIV+CSS制作方法,使内容和结构分离,在修改页面的时候更加容易省时。根据区域内容标记,到CSS里找到相应的ID,使得修改页面的时候更加方便,也不会破坏页面其他部分的布局样式,在团队开发中更容易分工合作而减少相互关联性。

6、搜索引擎更加友好。相对与传统的table,

采用DIV+CSS技术的网页,由于将大部分的HTML代码和内容样式写入了CSS文件中,这就使得网页中代码更加简洁,正文部分更为突出明显,便于被搜索引擎采集收录。

三、CSS+DIV网站设计的缺陷

尽管DIV+CSS具有一定的优势,不过现阶段CSS+DIV网站建设存在的问题也比较明显,主要表现在:

1、对于CSS的高度依赖使得网页设计变得比较复杂。相对于HTML4.0中的表格布局(table),CSS+DIV尽管不是高不可及,但至少要比表格定位复杂的多,即使对于网站设计高手也很容易出现问题,更不要说初学者了,这在一定程度上影响了XHTML网站设计语言的普及应用。

2、CSS文件异常将影响整个网站的正常浏览。CSS网站制作的设计元素通常放在一个或几个外部文件中,这些文件有可能相当复杂,甚至比较庞大,如果CSS文件调用出现异常,那么整个网站将变得惨不忍睹。

3、对于CSS网站设计的浏览器兼容性问题比较突出。虽然说DIV+CSS解决了大部分浏览器兼容问题,但是也有在部分浏览器中使用出现异常,CSS+DIV还有待于各个浏览器厂商的进一步支持。

4、CSS+DIV对搜索引擎优化与否取决于网页设计的专业水平而不是CSS+DIV本身。CSS+DIV网页设计并不能保证网页对搜索引擎的优化,甚至不能保证一定比HTML网站有更简洁的代码设计。因为对于搜索引擎而言,网站结构、内容、相关网站链接等因素始终是网站优化最重要的指标。

如何更有效、更合理的运用WEB2.0设计标准,这需要很长时间的学习和锻炼。而如何将DIV+CSS运用的更好,需要通过不断的实践和体检,积累丰富的设计经验,才能很好的掌握这门技术。

查看更多>>

转载于:https://www.cnblogs.com/yun111/archive/2013/02/21/2920166.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/409120.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql独有的函数_数据库之MySQL函数(一)

一、数学函数1、绝对值函数ABS(x) :返回 x 的绝对值mysql> select ABS(2),ABS(-2.3),ABS(-22);返回的结果如下:数学学得好的大佬应该知道(本人是个数学渣。。。。),负数的绝对值是正数,正数的绝对值还是正数本身2、 返回圆周率…

The test form is only available for requests from the local machine解决方法

"The test form is only available for requests from the local machine"解决方法 最近刚写service,部署起来以后出现上述问题,想想肯定也有很多人碰到类似问题,一起来解决掉吧! 原因:NET Framework 1.1 定义了一个名为 HttpPostLocalhost 的新协议。默认情况下&…

python之字符串格式化(format)

最近刚接触到python的字符串用format格式化这个知识点,刚好也找到这篇文章,就转载下,记录下这个知识点: 转载自python之字符串格式化(format) 用法: 它通过{}和:来代替传统%方式 1、使用位置参数 要点:从以下例子可…

teststand调用python模块_TestStand 基本知识[10]--在序列中调用代码模块之--LabVIEW

在TestStand调用外部代码模块时,使用频率最高的就是LabVIEW VI。下面调用TestStand Demo程序,可以看到如下图:1. 添加LabVIEW Action步骤,并创建或者加载VI。当添加LabVIEW步骤后,可以通过VI Path加载想要调用的VI(也可以创建模板…

C#事件机制(记住流程)

转自:http://jimmyloveforever.blog.163.com/blog/static/119775247200951303935836/ 1,C#事件机制是基于委托实现的,因此要首先定义一个委托EventHandler:public delegate void EventHandler(object from , myEventArgs e) Syste…

mysql-5.7.13-winx64如何安装_mysql 5.7.13 winx64安装配置方法图文教程

针对之前安装mysql的笔记进行了总结,分享给大家。1.下载根据电脑配置来选,我选了 windows(x86,64-bit),ZIP Archive这个,点击Download,页面跳转到如下图点击最下面的No thanks,just start my download,开始下载。我的mysql安装路径是D:\Mysql…

Android Studio 安装配置问题总结

之前一直都是使用Eclipse写Android的,但一直都有听说Android Studio是一个更好的用于开发Android的软件,之前其实也有保存过一些别人写的安装和配置Android Studio的一些教程,在这里也列出来:Android Studio 入门指南;…

说说mysql_说说MySQL权限 - andyqian的个人空间 - OSCHINA - 中文开源技术交流社区

本文首发于个人微信公众号《andyqian》,期待你的关注~前言今天继续MySQL系列文章,讲讲MySQL权限相关的内容。我们都知道,在写系统的时候,都会有权限相关的服务,以达到权限控制的目的。以最简单的权限菜单为例&#xff…

2015 总结 2016 展望

2015年过去了,2016年开始了。2015 总结 回首2015,最大的变化就是从本科到研究生,上半年本科毕业了,下半年则是继续读研,当然还是在本校读研,学院也还是本学院,至于专业还是有所改变了&#xff…

mysql5.7安装差异_mysql5.7和mysql5.6同在CentOS7.4安装差异对比之5.7.18

rpm -qa|grep mariadb // 查询出来已安装的mariadbrpm -e --nodeps 文件名 // 卸载mariadb,文件名为上述命令查询出来的文件yum -y install gcc gcc-c ncurses ncurses-devel cmake bison5.7/5.7解压改名chmod -R 755 mysql/chown -R lbd.lbd mysql/lbd用户默认已经…

关于Android回调的理解

现在学习Android的过程中,一个一直没有理解好的点就是回调了,虽然实际上一直都在使用,比如最常见的就是一个Button,设置点击事件,即setOnClickListener,这就是一个接口,然后必须要实现onClick方法&#xff…

mysql格式分隔符row_MySQLRow格式Binlog的解析(1)

用MySQL 行格式的复制的Slave经常会遇到复制出错1062和1032 错误,一般是镜像异常宕机导致主从复制数据不一致所致,但是有些库本身很大,重建成本很大,并且这些库的数据一致性用户可能都不是太关心的,所以之前的处理办法…

[机器学习笔记] Note1--机器学习简介

阅读本文大约需要 2 分钟 本文结构: 什么是机器学习监督学习(Supervised Learning)非监督学习(Unsupervised Learning)课程小结 这是学习 Andrew Ng 在 Coursea 上的机器学习课程所做的笔记。 什么是机器学习 对于机器学习,并没有一个一致认同的定义…

cellet 的相关线程

cellet启动了两个进程,分别是cellet-resource和cellet进程,这两个进程分别启动了一系列的线程: cellet-resource: StartExecutorReceiver ResourceInfoSender ExecutorControlReceiver 这个进程启动上述线程之后就会监控,是否其子…

mysql执行过程五步_简单五步教你搭建MySQL主从复制

环境主机:172.17.0.2从机:172.17.0.3环境:CentOS7MySQL:5.6.38目标:实现主机172.17.0.2到从机172.17.0.3基于Binlog的主从复制目前MySQL提供两种方式主从复制:基于Binlog(我们此篇就是基于Binlog的主从复制…