CSS的简介

1、CSS概述及作用

  CSS:Cascading Style Sheets)是层叠样式表用来定义网页的显示效果。可以解决html代码对样式定义的重复,提高了后期样式代码的可维护性,并增强了网页的显示效果功能。
  作用:CSS将网页内容和显示样式进行分离,提高了显示功能。

2、 CSS和HTML的结合(*****)(四种)

  CSS与HTML的结合方式

  1.style属性方式:

  利用标签中style属性来改变每个标签的显示样式。

  例:  

<p style="background-color:#FF0000; color:#FFFFFF">
p标签段落内容。
</p>

  该方式比较灵活,但是对于多个相同标签的同一样式定义比较麻烦,适合局部修改。

  2.style标签方式:(内嵌方式)

  在head标签中加入style标签,对多个标签进行统一修改。  

<head>
<style type=”text/css”>
p { color:#FF0000;}
</style>
</head>

  该方式可以对单个页面的样式进行统一设置,但对于局部不够灵活。

  3.导入方式:(常用的方式)

  前提是已经存在一个定义好的CSS文件。网页的一部分样式需要用到,那么就用到这种方式。

  例:

<style type="text/css">
@import url(css_3.css);
div { color:#FF0000;}
</style>  

  定义一个外部的CSS文件(.css)结尾的。
  @import url("css文件的地址");需要写在<style>标签的内部

  注:url括号后面必须要用分号结束。如果导入进来的样式与本页面定义的样式重复,以本页定义样式为准。

  4.链接方式:(常用的方式)

  通过head标签中link标签来实现,前提也是先要有一个已定好的CSS文件。

  例:  

<link rel="stylesheet" type="text/css" href="css_3.css" />

  <link rel="stylesheet" type="text/css" href="CSS文件的地址" > ,不能写在<style>内部,写在<head>标签的内部。
  rel:代表当前的文件和引入文件的关系。
  type:类型
  href:CSS的地址

  注:可以通过多个link标签链接进来多个CSS文件。重复样式以最后链接进来的CSS样式为准。

3、CSS样式优先级和代码规范

  1.CSS的优先级

  (一般情况下)从上到下,由外到内,优先级从低到高的。
   特殊情况:标签名选择器 < class选择器 < ID选择器 < style属性

  2. CSS的代码规范

  (1)选择器名称{属性名:属性值;属性名:属性值;...}

  (2)属性与属性之间用 分号 隔开
  (3)属性与属性值直接按用 冒号 连接

  (3)如果一个属性有多个值,值与值直接用空格隔开
  例子 

div{border:值1 值2 值3}

4、CSS的选择器(*****)

  1.选择器:

  编写的CSS代码作用在哪个标签上。

  2.基本选择器:

  (1)标签名选择器

  每一个标签都定义了class属性和id属性。用于对标签进行标识,方便对标签进行操作。
  在定义的中,多个标签的class属性值可以相同,而id值要唯一,因为JavaScript中经常用。

  (2)class选择器:(常用的)
  在标签中定义class属性并赋值。通过 标签名.class值 对该标签进行样式设置。
  例:
  相同标签设置不同样式的时候,用class进行区分。

p.pclass_1 {color:#FF0000;}
p.pclass_2 {color:#0000FF;}
<p class=”pclass_1”>P标签样式</p>
<p class=”pclass_2”>P标签样式</p>

  不同标签进行相同设置的时候,用class进行统一定义。

.classname {color:#00FF00;}

<p class=”classname”>P标签样式</p>
<div class=”classname”>DIV标签样式</div>

  (3)id选择器:
  与class选择器类似,但格式不同,选择器的名称为:#id值。
  例:

#pid { color:#0000FF;}
<p id=”pid”>P标签样式</p>

  注:多个标签同样可以定义相同的id值,但是对于JavaScript对标签元素的获取就会出错。所以形成习惯,确保id值的唯一性对于以后的数据库设计也很有好处。

  优先级(特殊):
  标签名选择器 < class选择器 < ID选择器 < style属性

  3.扩展选择器:

  (1)关联选择器:多个标签之间产生关系。

  标签是可以嵌套的,要让相同标签中的不同标签显示不同样式,就可以用此选择器。  

  例:  

p { color:#00FF00;}
p b { color:#FF000;}
<p>P标签<b>刘德华</b>段落样式</p>
<p>P标签段落</p>

  注:中间用空格隔开

  (2)组合选择器:对多个不同的选择器设置相同的样式  

p,div { color:#FF0000;}
<p>P标签显示段落。</p>
<div>DIV标签显示段落</div>

  注:中间用逗号隔开
  (3)伪元素选择器:CSS定义好的选择器
  如果使用超链接的4个状态,使用的顺序: L V H A  

  其实就在html中预先定义好的一些选择器。称为伪元素。是因为CSS的术语。

  格式:标签名:伪元素。类名 标签名。类名:伪元素。都可以。

  a:link 超链接未点击状态。 text-decoration: none;

  a:visited 被访问后的状态。

  a:hover 光标移到超链接上的状态(未点击)。

  a:active 点击超链接时的状态。

  

  使用顺序 L – V – H - A

  p:first-line 段落的第一行文本。

  p:first-letter 段落中的第一个字母。

  p:focus 具有焦点的元素。IE6浏览器不支持,在FireFox中可以看到效果。

  CSS的简单练习(查阅文档)

table {
font-family: 隶书;
font-size:14px;
color:black;
border-width: 1px;
border-color: gray;
border-collapse: collapse;
width: 200px;
}
table th {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: gray;
background-color: #dedede;
}
table td {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: gray;
background-color: #ffffff;
} 

5、CSS的布局(了解)

  1.盒子模型

  在进行布局前需要把数据封装到一块一块的区域内,这个区域的专业术语叫盒子。

    边框(border)分为上 下 左 右

    内边距(padding)分为上 下 左 右

    外边距(margin)分为上 下 左 右

  2.CSS布局漂浮属性 

  float(漂浮)

    none :  默认值。对象不飘浮
    left :  文本流向对象的右边
    right :  文本流向对象的左边

  clear(清除)

    none :  默认值。允许两边都可以有浮动对象
    left :  不允许左边有浮动对象
    right :  不允许右边有浮动对象
    both :  不允许有浮动对象

  3.CSS布局定位属性

  position
    static :  默认值。无特殊定位,对象遵循HTML定位规则
    absolute :  将对象从文档流中拖出,使用 left , right , top , bottom 等属性相对于其最接近的一个最有定位设置的父对象进行绝对定位。如果不存在这样的父对象,则依据 body 对象。而其层叠通过 z-index 属性
    relative :  对象不可层叠,但将依据 left , right , top , bottom 等属性在正常文档流中偏移位置

JavaWeb之CSS详解的更多相关文章

  1. jquery的css详解(二)

    jq的工具方法style用于设置样式,jq的实例方法css在设置样式时就是调用的它,接下来分析一下源码. jQuery.extend({ ............................ st ...

  2. CSS详解

    Web前端开发css基础样式总结 颜色和单位的使用 颜色 用颜色的名字表示颜色,比如:red 用16进制表示演示 比如:#FF0000 用rgb数值表示颜色,rgb(红,绿,蓝),每个值都在0-255 ...

  3. DIV+CSS详解

    DIV+CSS详解 ✪DIV+CSS"这种叫法其实是一种不准确的叫法 在做笔记的最前面必须先给大家纠正一个错误,就是"DIV+CSS"这种叫法其实是一种不准确的叫法,是国 ...

  4. css详解background八大属性及其含义

    background(背景) 以前笔者在css盒模型以及如何计算盒子的宽度一文中提到过盒模型可以看成由 元素外边距(margin).元素边框(border).元素内边距(padding)和元素内容(c ...

  5. jquery的css详解(一)

    通过阅读源码可以发现css是jq的实例方法.而在内部调用jq的工具方法access来实现的,对该方法不了解的朋友请点击 -> jquery工具方法access详解 在access的回调中做了一个 ...

  6. css详解3

    推荐学习链接:css盒模型 1.盒模型的常用属性 1.1.pading <html lang="en"> <head> <meta charset=& ...

  7. JavaWeb之XML详解

    XML语言 什么是XML? XML是指可扩展标记语言(eXtensible Markup Language),它是一种标记语言,很类似HTML.它被设计的宗旨是传输数据,而非显示数据. XML标签没有 ...

  8. css详解笔记

    CSS中的块级元素与行内元素 块级元素特性: 1.占据一整行,总是重起一行并且后面的元素也必须另起一行显示. 2.内联元素特性: 3.和其他内联元素显示在同一行. 块级元素列举如下: div(文档分区 ...

  9. javaweb之监听器详解

    在servlet中定义了多种类型的监听器,他们用于监听事件源分别是servletContext,httpsession,servletrequest 这三个域对象. servlet中监听器主要有三类: ...

随机推荐

  1. 【requireJS源码学习01】了解整个requireJS的结构

    前言 现在工作中基本离不开requireJS这种模块管理工具了,之前一直在用,但是对其原理不甚熟悉,整两天我们来试着学习其源码,而后在探寻其背后的AMD思想吧 于是今天的目标是熟悉requireJS整 ...

  2. Hibernate框架的配置

    概念 持久化框架 把对象保存到数据库中,对数据的CURD操作 配置Hibernate 1.在项目中引入Hibernate的Jar包 在 WebContent/WEB-INF/lib 目录下 导入jar ...

  3. Conditional Split component 用法

    Conditional Split 用于将数据流按照条件进行拆分,每一个output 都有name和condition. 数据流逐行按照condition进行match,如果match,那么改行会进入 ...

  4. Sql Server系列:Transact-SQL概述

    结构化查询语言(Structure Query Language,SQL)是对数据库进行查询和修改的语言.Transact-SQL是SQL的一种实现形式,它包含了标准的SQL语言部分. 根据完成的具体 ...

  5. 字典 Key值转换为数组

    public static string[] GetCategories() { Dictionary<string, int> itemMap = new Dictionary<s ...

  6. Js的语法和循环

    1.蓝球弹起的高度 篮球从10米高的地方落下,每次弹起的高度是原来的0.3倍,问弹跳10次之后篮球的高度. <script type="text/javascript"> ...

  7. 【原创】开源.NET排列组合组件KwCombinatorics使用(一)—组合生成

           本博客所有文章分类的总目录:本博客博文总目录-实时更新 本博客其他.NET开源项目文章目录:[目录]本博客其他.NET开源项目文章目录 KwCombinatorics组件文章目录: 1. ...

  8. Cinder 组件详解 - 每天5分钟玩转 OpenStack(47)

    本节我们将详细讲解 Cinder 的各个子服务. cinder-api cinder-api 是整个 Cinder 组件的门户,所有 cinder 的请求都首先由 nova-api 处理.cinder ...

  9. cookie属性详解

    在chrome控制台中的resources选项卡中可以看到cookie的信息. 一个域名下面可能存在着很多个cookie对象. name字段为一个cookie的名称. value字段为一个cookie ...

  10. 项目安排(离散化+DP)

    题目来源:网易有道2013年校园招聘面试二面试题 题目描述: 小明每天都在开源社区上做项目,假设每天他都有很多项目可以选,其中每个项目都有一个开始时间和截止时间,假设做完每个项目后,拿到报酬都是不同的 ...