zoukankan      html  css  js  c++  java
  • CSS简明教程

    CSS语法

    如同下面形式p {color:red;text-align:center;}

    CSS由选择器和{}包含的声明组成。每条声明必须由;结束,是一个由:分隔的键值对。

    HelloWord程序

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8"> 
    <title>菜鸟教程(runoob.com)</title> 
    <style>
    p
    {
        color:red;
        text-align:center;
    } 
    </style>
    </head>
    
    <body>
    <p>Hello World!</p>
    <p>这个段落采用CSS样式化。</p>
    </body>
    </html>
    CSS的HelloWorld程序

    效果是 所有的<p>标签的内容都变红和居中

    CSS选择器

     id选择器

    #para1
    {
        text-align:center;
        color:red;
    }

    使用

    <p id="para1">Hello World!</p>

    class选择器

    选择器名字由.开头

    .center
    {
        text-align:center;
    }

    使用

    <h1 class="center">标题居中</h1>
    <p class="center">段落居中。</p> 
    p.center {text-align:center;}    选择class为center的p标签元素

     标签选择器

    选择器名称使用标签名, 比如p,h1,div,表明相应的标签会匹配对应css。

    p {color:red;text-align:center;}

    嵌套选择器

    p{ }: 为所有 p 元素指定一个样式。
    .marked{ }: 为所有 class="marked" 的元素指定一个样式。
    .marked p{ }: 为所有 class="marked" 元素内的 p 元素指定一个样式。
    p.marked{ }: 为所有 class="marked" 的 p 元素指定一个样式。

     复合标签选择器

    /*选择并设置所有 <h1> 样式和所有 <p> 元素的样式:*/
    h1,p
    { 
    background-color:yellow;
    }
    /*选择并设置位于 <div> 元素内部的每个 <p> 元素的样式*/
    div p
    { 
    background-color:yellow;
    }
    /*选取父元素是 <div> 元素的每个 <p> 元素,并设置其背景色*/
    div>p
    { 
    background-color:yellow;
    }
    /*选择 <div> 元素之后紧跟的每个 <p> 元素,并设置其背景色*/
    div+p
    { 
    background-color:yellow;
    }
    //选择器
    http://www.w3school.com.cn/cssref/css_selectors.asp

     插入样式表

    外部

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

    mystyle.css内容可能如下

    hr {color:sienna;}
    p {margin-left:20px;}
    body {background-image:url("/images/back40.gif");}

    内部

    <head>
    <style>
    hr {color:sienna;}
    p {margin-left:20px;}
    body {background-image:url("images/back40.gif");}
    </style>
    </head>

    内联

    <p style="color:sienna;margin-left:20px">这是一个段落。</p>

    优先级:内联>内部>外部

     背景

    body
    {
    background-color:#6495ed;
    background-image:url('img_tree.png'); /*有图片会覆盖颜色背景*/
    background-repeat:no-repeat;/*默认在X和Y轴方向重复,值还有repeat-x,repeat-y*/
    background-position:right top;/*图片位置,其他值参考
    http://www.runoob.com/cssref/pr-background-position.html*/
    background-attachment:fixed;/*图片是否随滚轮滚动,默认值scroll*/
    
    }

     文本

    .myclass
    {
    color:#00ff00;
    text-align:center;/*文本居中,right,文本靠右,justify,所有行宽度相等,左右*/
    text-decoration:overline;/*文字上方有线,还有line-through,underline*/
    text-transform:uppercase;/*还有lowercase,capitalize*/
    text-indent:50px;/*首行缩进*/
    }

     字体

    .myclass
    {
    font-family:"Times New Roman",Times,serif;
    /*font-family:Arial,Helvetica,sans-serif;*/
    font-style:normal;/*italic,oblique*/
    font-size:40px;
    font-size:2.5em;/*1em的默认大小是16px*/
    font-size:100%;/*使用百分比,默认字体大小16px*/
    
    }

     链接

    a:link {color:#000000;}      /* 未访问链接*/
    a:visited {color:#00FF00;}  /* 已访问链接 */
    a:hover {color:#FF00FF;}  /* 鼠标移动到链接上 */
    a:active {color:#0000FF;}  /* 鼠标点击时 */
    
    
    /*注意顺序*/
    /*例子2*/
    a:link {background-color:#B2FF99;}
    a:visited {background-color:#FFFF85;}
    a:hover {background-color:#FF704D;}
    a:active {background-color:#FF704D;}

    列表

    ul.a {list-style-type: circle;}
    ul.b {list-style-type: square;}
     
    ol.c {list-style-type: upper-roman;}
    ol.d {list-style-type: lower-alpha;}
    
     /*use image*/
    ul
    {
        list-style-image: url('sqpurple.gif');
    }

    表格

    table,th,td
    {
        border:1px solid #00ff00;
    }
    /*此表格为绿色双边框,如果需要边框为单线条边框,增加*/
    table
    {
        border-collapse:collapse;
    }
    
    /*表格宽度和高度*/
    table 
    {
        width:100%;
    }
    th
    {
        height:50px;
    }
    /*表格颜色*/
    table, td, th
    {
        border:1px solid green;
    }
    th
    {
        background-color:green;
        color:white;
    }

    盒子模型

    CSS box-model

    div {
        width: 300px;
        border: 25px solid green;
        padding: 25px;
        margin: 25px;
    }

    边框

        border-style:solid;
    /*其他值dotted,dashed,groove,*/
        border-5px;
    border-color:#98bf21;
    /* 边框四周风格可以单独设置*/
    border-right-style:solid;

    例子

    <p>两个不同的边界样式。</p>
    <style>
    p
    {
    border-bottom: 1px solid #ccc;padding:14px;border-color: #f44336;
    }
    </style>

    {border: 1px solid #ccc;padding:14px;border-radius: 16px;}

    {background-color: #ddffff;padding: 14px;border-left: 6px solid #ccc;border-color: #2196F3;}

    Margin 和Padding

    margin-top:100px;
    margin-bottom:100px;
    margin-right:50px;
    margin-left:50px;
    
    /*简写
    margin后面可以是1~4 个数值
    1:四个外边距都是这个值
    2:上下, 左右
    3:上,左右,下
    4:上,右,下,左
    
    */
    padding 同理

     显示隐藏,块和内联

    /*隐藏元素的两种方法*/
    {visibility:hidden;}/*空间依然占用*/
    {display:none;}/* 不占用空间*/

    块元素是一个元素,占用了全部宽度,在前后都是换行符,可设置宽和高。

    块元素的例子:

    • <h1>
    • <p>
    • <div>
    • li、dt、dd

    内联元素只需要必要的宽度,不强制换行,不能设置宽和高。

    内联元素的例子:

    • <span>
    • <a>
    • b、i、u、em
     /*把列表作为内联*/
    li {display:inline;}
    
    /*把span作为block*/
    span {display:block;}

    定位

    {
    position:XXX;
    left:32px;
    }
    XXX可以是static,fixed,relative,absolute,sticky
    /*
    static 是默认值
    fixed相对于浏览器窗口的位置
    relative相对于元素本来应该的位置
    absolutex相对于最近定位父元素,如果没有就是html
    sticky在relative和fixed之间
    它的行为就像 position:relative; 而当页面滚动超出目标区域时,它的表现就像 position:fixed;,它会固定在目标位置。
    */

     浮动

    一般用于图像,img { float:right; }

    一个浮动元素会尽量向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。

    浮动元素之后的元素将围绕它。

    浮动元素之前的元素将不会受到影响。

    如果你把几个浮动的元素放到一起,如果有空间的话,它们将彼此相邻。

    对齐

    要水平居中对齐一个元素(如 <div>), 可以使用 margin: auto;。

    如果仅仅是为了文本在元素内居中对齐,可以使用 text-align: center;

     要让图片居中对齐, 可以使用 margin: auto; 并将它放到  元素中:

    img {
        display: block;
        margin: auto;
        width: 40%;
    }
  • 相关阅读:
    MongoDB 基础学习
    在 PostgreSQL 中使用码农很忙 IP 地址数据库
    在 MySQL 中使用码农很忙 IP 地址数据库
    编译opencv和opencv_contrib
    修改本次提交日志
    clone报告超过限制
    修改gitolite管理员
    libevent简介[翻译]11 连接监听:接收一个TCP连接
    libevent简介[翻译]11 Evbuffers:缓冲IO的功能函数
    Windows查看TCP连接数
  • 原文地址:https://www.cnblogs.com/legion/p/9704940.html
Copyright © 2011-2022 走看看