前端基础之css

什么是css

CSS 指层叠样式表 (Cascading Style Sheets)

  • 外部样式表通常存储在 CSS 文件
  • 多个样式定义可层叠为一个

css的三种机制

1普通流

2浮动()float:left,(right)浮动在海面上,显示出的,但是改变不了标准流

从普通流中浮动起来,即多个div排列浮动

3定位

最简单的就是菜单栏,导航条经常用定位保持不动的定位

或者定位到某个盒子上的定位等等

定位=定位模式+边偏移

边偏移:在css中通过top,bottom.left,right属性定义元素的边偏移

===

定位模式:通过position属性定义元素的定位模式

 其中static就是普通的定义,基本用的很少。

下面看看几个经常用的、

相对定位:总是以自己原来的位置移动,并且原来的位置还在,即占有位置

 

绝对定位(absolute)----最重要是不占位置,很多什么下一页或者点击翻篇或什么图片轮滚下一个图片经常用

以带有定位的父级元素来移动位置,

如果没有父级或者父级没有定位那么就会以浏览器即文档为准,

比如left 500px那就是从浏览器走500px,

并且有一个特点就是子绝父相

意思是当你想用绝对定位是原理上父级以上什么定为都行并且绝对定位会在父级上移动,但是得用相对定位

才能占位置,不然两个都没位置()

-----------基础知识---------------------

CSS声明总是以分号(;)结束,声明总以大括号({})括起来

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

而一般都是用外部样式表

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

id 选择器

以下的样式规则应用于元素属性 id="para1":

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

class 选择器

.center {text-align:center;}

=========================

然后就是一般的属性

background

  background-image

  background-repeat

  background-color

text

  

表格边框

指定CSS表格边框,使用border属性。

下面的例子指定了一个表格的Th和TD元素的黑色边框:

table, th, td
{
    border: 1px solid black;
}

margin

padding-top:25px;
padding-bottom:25px;
padding-right:50px;
padding-left:50px;

  padding:25px 50px 75px 100px;

  • 上填充为25px
  • 右填充为50px
  • 下填充为75px
  • 左填充为100px
margin-top:100px;
margin-bottom:100px;
margin-right:50px;
margin-left:50px;

CSS 尺寸 

<style>
html {height:100%;}
body {height:100%;}
img.normal {height:auto;}
img.big {height:50%;}
img.small {height:10%;}
</style>
</head>

<body>
<img class="normal" src="logocss.gif" width="95" height="84" /><br>
<img class="big" src="logocss.gif" width="95" height="84" /><br>
<img class="small" src="logocss.gif" width="95" height="84" />

hover鼠标指针浮动在其上的元素

看完这些下面看一个以前的实例

     <link rel="stylesheet" type="text/css" href="web_class_div_css.css" />
    </head>
    <body>
        <div id="container">
            <!-- 顶部 -->
            <div id="header">
                <div id="top">
                    <div id="logo"></div>
                    <div id="sitename">Tablet PC</div>
                    <div class="clear"></div>
                </div>
            </div>
            <!-- /顶部 -->
            <!-- 导航 -->
            <div id="nav">
                <ul>
                    <li><a href="">首页</a></li>
                    <li><a href="">平板分类</a>
                        <ul>
                            <li><a href="">Windows</a>
                                <ul>
                                    <li><a href="">微软 Surface</a></li>
                                    <li><a href="">中柏 Jumper</a></li>
                                    <li><a href="">台电 X6 Pro</a></li>
                                </ul>
                            </li>
                            <li><a href="">iPad</a></li>
                            <li><a href="">Android</a>
                                <ul>
                                    <li><a href="">微软 Surface</a></li>
                                    <li><a href="">中柏 Jumper</a></li>
                                    <li><a href="">台电 X6 Pro</a></li>
                                </ul>
                            </li>
                        </ul>

                    </li>
                    <li><a href="">市场行情</a></li>
                    <li><a href="">平板测评</a></li>
                    <li><a href="">平板推荐</a></li>
                    <li><a href="">文章排行</a></li>
                    <li><a href="">联系我们</a></li>
                </ul>
            </div>
            <!-- /导航 -->
        </div>
    </body>
</html>
/* nav */
#nav {
    background-image: url(image/navbg.jpg);
    height: 42px;

}

#nav ul {
    margin: 0 auto;
    padding: 0;
    border: 0px solid red;
     1000px;

}

#nav ul li {
    list-style: none;
    float: left;
    border: 0px solid red;
     140px;
}

#nav ul li a {
    text-decoration: none;
    border: 0px solid red;
    display: block;
    text-align: center;
    color: white;
    height: 40px;
    line-height: 40px;
}

/* nav end */
/* 第2层 */
#nav ul li ul {
    display: none;
}

#nav ul li:hover ul {
    display: block;
    /* 鼠标移动到第一层的li第二层的ul就显示 */
}

#nav ul li ul li {
    float: none;
    position: relative;
}

#nav ul li ul li:hover {
    background-color: #FFFF00;
}

#nav ul li ul li a {
    color: black;
}

/* 第2层结束 */
/* 第3层 */
#nav ul li:hover ul li ul {
    display: none;
    /* 鼠标移动到第一层的li第三层的ul就消失 */
}

#nav ul li:hover ul li:hover ul {
    display: block;
    position: absolute;
    left: 140px;
    top: 0px;
    /* 鼠标移动到第一层的li,第二层的li第三层的ul就显示 */
}

/* 第3层结束 */

 显示与隐藏

display:none;block

隐藏之后,不再保留位置;

可见性:visibility

 溢出问题

 鼠标样式

 防拖拽防文本域

 垂直对齐:vertical-align

精灵技术sprite

 减速服务器接触的次数,减少服务器压力

需要美工姿势

原文地址:https://www.cnblogs.com/yangj-Blog/p/13041835.html