CSS

一、css简介

CSS 是 Cascading Style Sheets的缩写,称为层叠样式表,用来设计网页的样式布局,以及大小来适应不同的屏幕等,使网页的样式和网页数据分离,

二、导入css
导入css有3种方式:

1.元素内嵌
     行内式是在标记的style属性中设定CSS样式。这种方式没有体现出CSS的优势,不推荐使用。 <div style="background:red"></div>

2.页面嵌入
     嵌入式是将CSS样式集中写在网页的<head></head>标签对的<style></style>标签对中。格式如下:
         <head>
           <style>
                 div {
                      background-color: red !important; # 如果有!important则会无论如何都会运用上这个css  
                   }    
          </style>
        </head>

3.外部引用
     也是将一个.css文件引入到HTML文件中<link rel="stylesheet"href="mystyle.css" />

#注意:
     导入式会在整个网页装载完后再装载CSS文件,因此这就导致了一个问题,如果网页比较大则会儿出现先显示无样式的页面,
闪烁一下之后,再出现网页的样式。这是导入式固有的一个缺陷。使用链接式时与导入式不同的是它会以网页文件主体装载前装载CSS文件,
因此显示出来的网页从一开始就是带样式的效果的,它不会象导入式那样先显示无样式的网页,然后再显示有样式的网页,这是链接式的优点。此外行内的样式等级最高

三、css选择器(常用)

标签选择器:
    div { background-color:red; }
    <div > </div>
 
class选择器:
    .bd { background-color:red; }
    <div class='bd'> </div>
 
id选择器:
    #idselect { background-color:red; }
    <div id='idselect' > </div>
 
关联选择器/子代选择器:
    #idselect p{ background-color:red; }
    <div id='idselect' > <p> </p> </div>
 
组合选择器:
    input,div,p{ background-color:red; }
 
属性选择器:
    input[type='text']{ width:100px; height:200px; }
    .c1[xiao='a']{color:red;}<br>    <div class='c1' xiao='a'>自定义属性选择器</div>    <br>
伪元素选择器:
    a:link{background-color:red;}    # 鼠标没有碰过的样式
    a:hover{background-color:red;}   # 鼠标放上去的样式
    a:active{background-color:red;}  # 选择链接时的样式
    a:visited{background-color:red;} # 已经访问过的链接的样式


# 继承的样式<浏览器默认的样式<通用选择器<标签选择器<class选择器<id选择器<子代选择器<行内样式
#规律:选择的越精准,优先级越高

四、css常用的属性 
1 颜色属性:

color:green
color:#ff6600
color:#f60
color:rgb(255,255,255)      # 红(R)、绿(G)、蓝(B) 每个的取值范围0~255
color:rgba(255,255,255,1)   # RGBA是代表Red(红色) Green(绿色) Blue(蓝色)和 Alpha的(色彩空间)透明度

2 字体属性:  

font-size:14px/50%/larger
font-family:微软雅黑,serif
font-weight:normal(默认值)/bold(粗)/bolder(更粗)/lighter(更细)
                   100、200、300~900,400 = normal,而 700 = bold
 
简写方式:<br>    font: 20px  '微软雅黑'

3 背景属性:  

background-image:url(图片路径)
background-repeat:no-repeat(不重复)/repeat(重复平铺满)/repeat-x(向Y轴重复)/repeat-y(向Y轴重复)
background-position: right top(20px 20px);(横向:left center right)(纵向:top center bottom)
 
简写方式:
    background:背景颜色 url(图像) 重复 位置
    background:#f60 url(images/bg,jpg) no-repeat top center

4 文本属性:  

text-align: center;   # 横向排列
line-height: 200px;   # 文本行高 通俗的讲,文字高度加上文字上下的空白区域的高度 50%:基于字体大小的百分比
text-indent: 150px;   # 首行缩进,
letter-spacing: 10px; # 字符间距
word-spacing: 20px;   # 单词间距

5 边框属性:

border-style: none   # 无边框
              solid  # 直线边框
              dashed # 虚线边框
              dotted # 点状边框
              double # 双线边框
              inherit # 继承
              groove # 凸槽边框
              ridge  # 垄状边框、inset inset边框、outset outset边框 依赖于border-color属性
 
border-width:px  固定值的边框
             medium 中等边框
             thick 粗边框
             thin 细边框
             inherit继承       
 
border-color:red
              #ff0000
              rgb(255,255,0)
              rgba(255,255,0,0.1)
<br>border-radius: px 倒角
简写方式:
      border:2px #f60 solid    

6 列表属性: 

list-style-type:none    无标记。
                disc    默认。标记是实心圆。
                circle  标记是空心圆。
                square  标记是实心方块。
                decimal 标记是数字。
                decimal-leading-zero    0开头的数字标记。(01, 02, 03, 等。)
                lower-roman     小写罗马数字(i, ii, iii, iv, v, 等。)
                upper-roman 大写罗马数字(I, II, III, IV, V, 等。)
                lower-alpha     小写英文字母The marker is lower-alpha (a, b, c, d, e, 等。)
                upper-alpha     大写英文字母The marker is upper-alpha (A, B, C, D, E, 等。)
                lower-greek  小写希腊字母(alpha, beta, gamma, 等。)
                lower-latin 小写拉丁字母(a, b, c, d, e, 等。)
                upper-latin 大写拉丁字母(A, B, C, D, E, 等。)
                hebrew    传统的希伯来编号方式
                armenian    传统的亚美尼亚编号方式
                georgian    传统的乔治亚编号方式(an, ban, gan, 等。)
                cjk-ideographic 简单的表意数字
                hiragana    标记是:a, i, u, e, o, ka, ki, 等。(日文片假名)
                katakana    标记是:A, I, U, E, O, KA, KI, 等。(日文片假名)
                hiragana-iroha  标记是:i, ro, ha, ni, ho, he, to, 等。(日文片假名)
                katakana-iroha  标记是:I, RO, HA, NI, HO, HE, TO, 等。(日文片假名)
 
list-style-position:inside  列表项目标记放置在文本以内,且环绕文本根据标记对齐。
                    outside 默认值。保持标记位于文本的左侧。列表项目标记放置在文本以外,且环绕文本不根据标记对齐。
                    inherit 规定应该从父元素继承 list-style-position 属性的值。
 
list-style-image:URL       图像的路径。
                 none      默认。无图形被显示。
                 inherit   规定应该从父元素继承 list-style-image 属性的值。
 
简写方式:
      list-style:square inside url('/i/arrow.jpg');

7 dispaly属性:  


display:none    # 隐藏属性
        block   # 变块级元素
        inline  # 变内联元素
        inline-block # 内联元素默认不能设置长宽,块级可以,这个让内联元素可以设置height width

8 cursor属性:


cursor:pointer  # 鼠标变小手
       help      
       move

9 opacity属性:


opacity:0.4  # 0-1之间的小数,颜色透明度

10 margin,pading边距属性:

margin: 10px    # 外边距(本身不会增加),与边框的距离
padding: 10px   # 内边距(本身会增加) 遵循上右下左,元素之间的距离

11 float属性  

float:left/right
clear:both
<body>
    <div style="width: 500px;border:2px solid red;">
        <div style="width:20%;float: left;background-color: aqua;">a</div>
        <div style="width:80%;float: left;background-color: beige;">b</div>
        <div style="clear:both"></div>
    </div>
</body>

12 position属性

position: fixed      # 固定浏览器窗口,网页返回顶部的按钮
          absolute   # 固定窗口
          relative   # 一般用于和absolute配合使用,相对于absolute
    <div style="height:2000px;">
        <div style="position: fixed;bottom: 0px;right: 0px;background-color: red;">111111</div>
    </div>
    <div style="height: 500px;width: 400px;border: 2px solid red;position: relative;">
        <div style="height: 200px;background-color: red;">
            <div style="position:absolute;bottom: 0px;right: 0px;">111</div>
        </div>
    </div>

注意:
1、css文档从上到下执行,以最后一个为准

a {
    font-size: 10px;
}
 
b {
    font-size: 40px;
}
 
<p class = "a b"> ddd </p>

2、有几个特殊的块级元素只能包含内联元素,不能包含块级元素。如h1,h2,h3,h4,h5,h6,p,dt 切记

3、父div里面的子div都float,

  方法1、在最后加一个div然后添上属性 clear:both 

  方法2、定义一个通用属性,

clearfix:afte{
    content: '111';
    display: block;
    clear: both;

    /* visibility 隐藏内容但占高度*/
    visibility: hidden;
    height: 0;
    /*display: none;隐藏内容也不占高度*/
}

一些案例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>带图像的登录</title>
    <style>
        .icon-name{
            background-image: url(i_name.jpg);
            height:16px;
            width:200px;
            display: inline-block;
            background-repeat:no-repeat;
        }
    </style>
</head>
<body>
    <div style="width:200px;position: relative;">
        <input style="width:180px;padding-right: 20px;" type="text"/>
        <span class="icon-name" style="position: absolute;top:5px;right: -186px;"></span>
    </div>
</body>
</html>
posted @ 2017-04-03 20:42  xiaoganghu  阅读(173)  评论(0编辑  收藏  举报