由来

从事软件行业一晃也5年有余,之间参与过若干个基于web的项目,所以javascript和Html基本已经相当熟悉,最近对于web前端开发比较关注,分析后发现CSS的确是自己的弱项,于是决定再加强下。就开始啃本书吧:CSS权威指南》,此处以及以后文章都将以学习该书为基础展开。

以下是第一章:“CSS和文档” 学习笔记

概念区分

替换和非替换元素

CSS起作用主要依赖于元素,但并非所有的元素都以相同的方式创建。比如,图像和段落就不是同类元素,span和div也不相同,通常元素的表现形式有两类:替换和非替换。

    • 替换元素(replaced element)

指用来替换元素内容的部分并非由文档内容自己标示。比如img元素,img没有具体内容,它的具体靠src属性指定的一个图像来填充。再比如:<input /> type="text" 的是,这是一个文本输入框,换一个其他的属性(button)时候,浏览器显示就不一样。(X)HTML中的<img>、<input>、<textarea>、<select>、<object>都是替换元素,这些元素都没有实际的内容。

    • 非替换元素(nonreplaced element):

大多数(X)HTML元素都是非替换元素,其内容由浏览器在元素本身生成的框中显示。比如<span>css base</span>就是一个非替换的元素。

块元素和行内元素

    • 块元素:

块元素生成一个元素框,默认情况下(没有css干预下),它会填充其父元素的内容区,旁边不能有其他元素。比较熟悉的有p和div。可以把块元素div想象成一个个box,或者如果你玩过剪贴文载的话,那就更加容易理解了。我们先把需要的文章从各种报纸、杂志剪下来。每块剪下来的内容就是一个block。然后我们把这些块按照自己的排版意图,用胶水重新贴到一张空白的新纸上。这样就形成了你自己独特的文摘快报了。

    • 行内元素:

行内元素在一个文本行内生成元素框,而不会打断这行文本。最好的例子就是XHTML中的a元素。这些元素不会在它本身之前或者之后生成“分隔符”,所以可以出现在另一个元素内容中,而不会破坏其显示。

当然在实际的使用过程中往往会用css属性来其作用:display。这个属性是使用,会在后期学习奉上。

关于link

一般一个html页面要引用独立文件的css样式,都会用到link标签,比如:

<link rel=”stylesheet” type=”text/css” href=”sheet1.css” media=”all”>

在使用过程中需要注意几点:

    • Link必须放在head元素中,不能放在其他元素内部<如title>。
    • Css文件中不能包含XHTML或任何其他标记语言。
    • 外部引用css文件不一定非得有个扩展名,但是基于对旧版本的浏览器的支持,建议写明.css结尾。

另外在使用过程中,我们也很少接触一个link标签属性:title(获选样式表中使用)。比如:

<link rel=”stylesheet” type=”text/css” href=”sheet1.css” title=”default”>
<link rel=”stylesheet” type=”text/css” href=”sheet1.css” title=”big-text”>

很多浏览器支持用户选择样式,通过添加title用户可以基于浏览器进行样式的切换,当然IE目前还是不支持,这个功能也用的比较少。

重拾CSS基础—开篇的更多相关文章

  1. 重拾C++ 基础知识总结(二)

    1.标准库string类型: 用户程序要使用string类型对象,必须包含相关头文件 #include <string> 字符串字面值与标准库string类型不是同一种类型,字符串字面值是 ...

  2. 重拾C++ 基础知识总结(一)

    1.使用gcc编译c++文件报错 proc1.cc:(.text+0x14): undefined reference to `std::cout' C++程序使用gcc命令只能编译,不能链接库文件 ...

  3. CSS魔法堂:重拾Border之——更广阔的遐想

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  4. CSS魔法堂:重拾Border之——图片作边框

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  5. CSS魔法堂:重拾Border之——不仅仅是圆角

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  6. CSS魔法堂:重拾Border之——解构Border

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  7. 重拾Java Web应用的基础体系结构

    目录 一.背景 二.Web应用 2.1 HTML 2.2 HTTP 2.3 URL 2.4 Servlet 2.4.1 编写第一个Servlet程序 2.5 JSP 2.6 容器 2.7 URL映射到 ...

  8. HTML5 -入门 (---css样式-------------(css基础与css选择器)---------------------—)

    ---恢复内容开始--- 一css基础入门与css选择器 CSS英文全拼:cascading style sheet 层叠样式表. 在html中使用:要在head中写style标签,所有样式放在sty ...

  9. CSS 基础总结

    CSS基础 Doctype 声明位于文档中的最前面,处于 标签之前.告知浏览器的解析器,用什么文档类型 规范来解析这个文档. 在标准模式中,浏览器根据规范呈现页面: 在混杂模式中,页面以一种比较宽松的 ...

随机推荐

  1. 使用fastcgi_cache加速网站

    为了提高网站的性能缓存是一把利器,nginx中可以配置fastcig_cache来缓存不需要实时获取的数据实现动静分离,nginx.conf配置如下: http {     -     fastcgi ...

  2. [置顶] boost使用(六)

    今天继续带来boost关于线程锁的一些使用,今天我使用一个更复杂的锁来控制同步,先来段简单的代码 #include <boost/thread.hpp> #include <iost ...

  3. sf

    #include <stdio.h> #include <time.h> #include <stdlib.h> #define MAXN 150 //最大节点数 ...

  4. MongoDB 安装(一)

    windows 8安装 mongodb 1.下载安装包 http://www.veryhuo.com/down/html/mongodb.html 2.解压到D:/MongoDB目录下. 3.把D:/ ...

  5. Asp.net MVC学习--默认程序结构、工作流程

    二.MVC 默认程序结构 MVC新建好之后,会对应的出现几个包,分别是:Controller.Model.View --即MVC 其中的默认的Default.aspx文件可以方便url重写,如果不设置 ...

  6. Android扫描SD卡中的文件

    当android的系统启动的时候,系统会自动扫描sdcard内的多媒体文件,并把获得的信息保存在一个系统数据库中,以后在其他程序中如果想要访问多媒体文件的信息,其实就是在这个数据库中进行的,而不是直接 ...

  7. 图文:TF卡和SD卡的区别及什么是TF卡?什么是SD卡

    小型存储设备凭借低廉的价格.多样化的品种.实用等特性大量充斥在大家身边,比如智能手机手机上.数码照相机上.游戏机上(一般是掌机)等都小型电子设备都频繁的使用到这种统称为SD的产品,比如TF卡和SD卡( ...

  8. 今天起改用mac的marsedit写博

    最近一直使用mac来工作,所以写博也相应改为marsedit. 初步感觉还是不错的,越来越发现mac其实也适合在工作中使用,生活上当然不在话下. 从高富帅的x220t变成屌丝的macbook小白(升级 ...

  9. css新属性box-sizing应用

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. saiku中多cube排序问题

    如题,一个schema中如果有多个cube(常有),那cube之间是如何排序显示的? 我们看一下OlapMetaExplorer.java文件的getConnection方法,其中有一行 Collec ...