热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

网页布局教程:掌握CSS网页布局属性

CSS是不是真的很难学?其实不难,只是缺少了掌握的经验,拿着一本书硬肯,有没有收获?有!但可能成效不大,作为过来人我觉得被动学习想要记住的东西是很难的,学习它我的经验是

CSS是不是真的很难学?其实不难,只是缺少了掌握的经验,拿着一本书硬肯,有没有收获?有!但可能成效不大,作为过来人我觉得被动学习想要记住的东西是很难的,学习它我的经验是可以先掌握精要(重要属性开始),待掌握精要自然而然这些属性远远不够满足自己的需求引起自己求知的欲望,自动延伸其他相关的属性从而自然掌握和加深对CSS的认识。这是我认为的一种方法(可惜我学的时候要是有人这么告诉我会走少很多弯路)。第一次写经验和大家共享,语言组织上或许有些欠缺,还请网友包含,但相信在以后更多的经验中,会写的更好。以下是我总结的一些经验和我认为必要讲的一些概念性解释。有经验分享欢迎发表评论共同探讨。

  在现时的网页技术中,CSS+DIV已经成为一种主流的网站标准,我们可以称他为(web标准)。CSS是英语Cascading Style Sheets(层叠样式表单)的缩写,它是一种用来表现 HTML 或 XML 等文件式样的计算机语言。

  在了解和学习CSS之前,首先我们要了解这种计算机语言对我们存在着那些优势和方便,理解这个我个人觉得很基础但也很必要,有助于明确CSS+DIV学习目的。网页教学网综合网站技术和设计人员的体会,并从网络应用的角度,将CSS+DIV网站设计的优势和问题归纳如下:

  首先,CSS的极大优势表现在简洁的代码,对于一个大型网站来说,可以节省大量带宽(真正意义在于,增加了有效关键词占网页总代码的比重)使用web标准制作的网站具有搜索引擎友好有一定优势;从程序与网页的美工方面,两者可以相互独立再结合从而减轻工作量避免重负开发。

  其次是CSS+DIV制作的网站使得网站改版相对简单,很多问题只需要改变CSS而不需要改动程序,从而降低了网站改版的成本,节省很多的时间。在和开发室的同事都有合作过类似的项目案例,相信同事对这点或多或少能感觉到实质的方便感受。

  最后一点是在刚开始接触的时候感觉很不好控制,反而觉得table更好控制方位,并且有可能会有抵触使用DIV编写写网页布局的情绪。其实这个是一个适应过程,我们可以通过大量的实际操作和练习并用心领会要点。之后就能感觉得出它确实是千变万化,一个页面不同的布局有可能有不同实现布局的写法,但无论如何写法都好,代码都是朝一个原则走的:就是:定义的名称尽可能的通用性,也就是用最少的代码定义更多的盒模具我称它为(一名多用);命名要规范性、组合性,方便其他设计师见名解用。另外一个是关于使用ID还是使用Class,对于这个有很多人可能会很模糊。其实是相对的,不过现在我写的习惯主要是使用class比较多,我觉得这个更方便并适合自己的编写习惯。

  以下是网页教学网整理认为需要首先认识和掌握基本常用的属性:

  CSS必须了解和掌握的重要属性:

  margin : auto | length 由浮点数字和单位标识符组成的长度值 | 百分数。百分数是基于父对象的高度。对于内联对象来说,左右外延边距可以是负数值。

  padding : length 由浮点数字和单位标识符组成的长度值 | 或者百分数。百分数是基于父对象的宽度。

  float : none | left |right 这个是浮动,在定义布局中必定用到的属性,在使用它的时候要注意产生的走位和浏览器兼容性问题,要在很多的实践操作中多了解这个属性。有这个属性就要了解以下这个配套使用的属性“清除”

  clear : none | left |right | both; none 允许两边都可以有浮动对象both不允许有浮动对象;left不允许左边有浮动对象 right不允许右边有浮动对象。

  background:url(images/aardvark.gif) left top no-repeat | repeat-x | repeat-y 定义背景图片来美化版面也是我们很常用到的属性。

  overflow : visible | auto | hidden | scroll 这个作用在布局中我通常利用他来防止、解决浏览器兼容出现问题

  border:1px solid #CCCCC 这个是定义边框大小,线条,颜色的属性。

  list-style-image list-style-position list-stle-type 这个列表属性通常使用在有序列表和无序列表当中,列表在定义网页标题索引文字连接中经常使用,这是验证CSS定义优越于表格的典型代表。

  以上是网页教学网认为在学习CSS中必须要熟记和理解的CSS属性,充分理解了它门的特性能够大大提高我们应用布局的自由度。所以学习这个并不是很难,掌握以上样式你会发觉,以前不了解的时候做起页面来感觉力不从心,掌握后很自然根据自己的逻辑思维完全可以去实现自己想要的布局和版面,并且CSS抵触情绪会缓解很多。

  谈到这,我要提出一个很常见的问题。我认为WEB标准并不是禁止table全部使用DIV,包括我自己刚开始的时候也有这样的错误想法,“标准”我的理解是规范设计师养成一个良好的编写习惯,达到一种主流的统一。有的情况下表格的在网页的功能实现上还是会有优越于DIV的时候,并且无节制DIV使用过多耗费ie解析增加cpu负担。这也是我们值得注意的问题。

  掌握以上常用的属性的同时,下面通过参考网络博客由设计铭 编写的一个CSS三列布局模板,主要围绕如何掌握CSS精要,学习网页布局教程实例模板,网友可以下载该模板根据文章内容细心琢磨,从而领会掌握技术。该模板经过本站编排涵盖上面列出重要的CSS属性。

  由于是布局教程例子,在版面的细节上没有花更多时间精细修饰,不过我觉得模板的版面不错,懂CSS的可以下载进行更细致的美工将会是一个很不错的网页,初步学习的可以下载来修改修改属性参数从而更形象掌握属性的特性,以达到更深掌握CSS的目的。


推荐阅读
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • Webpack5内置处理图片资源的配置方法
    本文介绍了在Webpack5中处理图片资源的配置方法。在Webpack4中,我们需要使用file-loader和url-loader来处理图片资源,但是在Webpack5中,这两个Loader的功能已经被内置到Webpack中,我们只需要简单配置即可实现图片资源的处理。本文还介绍了一些常用的配置方法,如匹配不同类型的图片文件、设置输出路径等。通过本文的学习,读者可以快速掌握Webpack5处理图片资源的方法。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 本文介绍了Cocos2dx学习笔记中的更新函数scheduleUpdate、进度计时器CCProgressTo和滚动视图CCScrollView的用法。详细介绍了scheduleUpdate函数的作用和使用方法,以及schedule函数的区别。同时,还提供了相关的代码示例。 ... [详细]
  • C#多线程解决界面卡死问题的完美解决方案
    当界面需要在程序运行中不断更新数据时,使用多线程可以解决界面卡死的问题。一个主线程创建界面,使用一个子线程执行程序并更新主界面,可以避免卡死现象。本文分享了一个例子,供大家参考。 ... [详细]
author-avatar
S晓晓宋五
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有