前端开发 - CSS - 上

CSS:
1.css的引入方式
2.基础选择器
3.高级选择器
4.选择器的优先级
5.伪类选择器
6.字体样式
7.文本样式
8.背景
9.盒模型border
10.margin
11.padding

1.css的引入方式
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>css的引入方式</title>

    <!--内链式-->
    <style type="text/css">
        h2{
            font-size: 30px;
            color: red;
        }
    </style>

    <style type="text/css">
        /* 外链式:导入式  实际用的少
            使用import是 先加载html 在加载css
            import 是css2.1特有的,对于不兼容css2.1的浏览器是无效的eg:IE5以下
        */
        @import url('./css/index.css');

    </style>

    <!--外链式:链接式
        使用link是html css同时加载的!!
        link 是XHTML
    -->
    <link rel="stylesheet" type="text/css" href="./css/index.css">

</head>
<body>

    <div>
        <!--内嵌式
            优先级:内嵌式 > 内链式;  一般不写内嵌式,以后不好维护!
        -->
        <h1 style="font-size: 10px;color: yellow">我是h1路飞学城</h1>
        <h2>我是h2路飞学城</h2>
    </div>

</body>
</html>

2.基础选择器
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>基础选择器</title>

    <style type="text/css">
        /*通配符选择器*/
        *{
            padding: 0;
            margin: 0;
            color: #868686;
        }
        /*id选择器*/   /* 父内容一般不设 高度 子内容填充*/
        #container{
            width: 968px;
            background-color: antiquewhite;
            margin: 0 auto;   /*内容居中显示*/
        }
        /* 标签选择器*/
        h1{
            color: rgba(158,232,149,0.73)
        }
        /*类选择器*/
        .content{
            width: 968px;
            background-color: red;
        }
        img{
            width: 968px;
        }
        /*子代选择器*/
        ul>li{
            color: aqua;
        }
        /*后代选择器*/
        ul a{
            color: green;
        }
    </style>

</head>
<body>
    <!-- 上中下 布局 -->
    <div id="container">
        <div class="header">
            <h1>路飞学城</h1>
        </div>

        <div class="content">
            <h3>我是内容</h3>
            <img src="./images/homesmall1.png" alt="图片1">
        </div>

        <div class="header">
            <ul>
                <li>1 <a href="javascript:">哈哈</a></li>
                <li>2</li>
                <li>3</li>
                <li>4</li>
                <li>5</li>
            </ul>
        </div>
    </div>
</body>
</html>

3.高级选择器
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>高级选择器</title>

    <style type="text/css">
        /*群组选择器*/
        .title,.content,.footer{
            width: 968px;
            /*height: 300px;*/
            margin: 0 auto;
            background-color: beige;
            border: 1px solid red;
        }
        /*交集选择器*/
        p.p1{
            color: green;
        }
        p#title1{
            font-size: 30px;
            color: red;
        }
        /* 毗邻标签 紧跟着h3标题的标签*/
        h3+p{
            color: aqua;
        }
        /*兄弟选择器*/
        h3~p{
            color: rgba(120,46,232,0.73)
        }
        /*属性选择器
          找到所有class=baidu的选择器
        */
        [class='baidu']{
            color: green;
        }
        /*找到所有class开头是btn 的选择器*/
        [class^='btn']{
            font-size: 20px;
            color: yellow;
        }
        /*找到以...结尾的选择器*/
       [class$='ault']{
            font-size: 40px;
            color: red;
        }

    </style>

</head>
<body>
    <div class="title">
        <p class="p1" id="title1">我是一个段落</p>
    </div>

    <div class="content">
        <h3>我是三级标题</h3>
        <a href="javascript:">百度一下</a>
        <p>我是另一个段落</p>
        <h3>我是三级标题</h3>
        <p>我是另一个段落</p>
        <h3>我是三级标题</h3>
        <p>我是另一个段落</p>
        <p>我是另一个段落</p>
        <p>我是另一个段落</p>
    </div>

    <div class="footer">
        <a href="https://www.baidu.com" class="baidu">百度</a>
        <a href="https://www.baidu.com" class="btn-default">百度一下</a>
        <a href="https://www.baidu.com" class="baidu">百度</a>
        <a href="https://www.baidu.com" class="btn-index">百度二下</a>

    </div>

    <!--
        总结:
            基础选择器:
                1.标签选择器    div
                2.类选择器     .div1
                3.id选择器     #box
                4.通配符选择器  *
            高级选择器:
                1.群组选择器  中间用,
                    .title,.content,.footer{}
                2.交集选择器  选择器之间不能有空格,第一个标签必须是标签选择器,第二个标签可以是id或者类选择器
                    p.p1{}   p#title1{}
                3.后代选择器  选择器之间用 空格
                    ul a{}
                4.子代选择器  选择器之间用 >
                    ul>li{}
                5.毗邻选择器  选择器之间用 +  紧跟着h3标题的标签
                    h3+p{}
                6.兄弟选择器  选择器之间用~
                    h3~p{}
                7.属性选择器
                     [class='baidu']{}
                     [class^='btn']{}
                     [class$='ault']{}
            css样式优先级:
                行内样式 > 内部样式表 > 外部样式表
                ID选择器 > 类选择器 > 标签选择器
    -->
</body>
</html>

4.选择器的优先级
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>优先级</title>

    <style type="text/css">
        #div1{
            background-color: yellow;
        }
        .box{
            background-color: green;
        }
        div{
            width: 200px;
            height: 200px;
            background-color: red;
        }
        
    </style>
</head>
<body>
    <!-- 选择器的优先级 id > 类 > 标签-->
    <div id="div1" class="box">哈哈</div>


</body>
</html>

5.伪类选择器
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>伪类选择器</title>

    <style type="text/css">
        /*超链接未被访问时的状态*/
        a:link{
            background-color: yellow;
        }
        /*鼠标单击时超链接的状态*/
        a:visited{
            color: green;
        }
        /*鼠标悬停时超链接的状态*/
        a:hover{
            font-size: 30px;
            color: aqua;
        }
        /*鼠标点击不松手超链接的状态*/
        a:active{
            color: blue;
        }
        /*获取焦点时的样式*/
        input:focus{
            background-color: red;
        }
        /*
        总结:
            爱恨情仇原则:love / hate
        */

        /*伪元素选择器*/
        p:first-letter{
            font-size: 30px;
        }
        p:before{
            content: '哈哈';
            color: red;
        }
        p:after{
            content: "$$";
            color: green;
        }

    </style>

</head>
<body>
    <ul>
        <li><a href="#">百度一下</a></li>
        <li><a href="#">hao123</a></li>
        <li><a href="#">博客</a></li>
    </ul>

    <form action="">
        <input type="text" name="">
    </form>

    <p>来呀,你好啊!</p>
</body>
</html>

6.字体样式
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>字体样式</title>

    <!--内链式 -->
    <style type="text/css">
        p{
            /*设置字体大小*/
            font-size: 30px;

            /*推荐设置斜体的时候使用oblique*/
            /*font-style: italic;*/
            font-style: oblique;

            /*设置字体的粗细*/
            font-weight: bolder;

            /*设置字体的类型*/
            font-family:"微软雅黑";

            /*设置字体的颜色*/
            color: red;
        }
    </style>

</head>
<body>
    <!--
        默认字体大小是 16px = 1em
                      0.75em = 12px
    -->
    <p>这里是个p!!</p>

</body>
</html>

7.文本样式
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>文本样式</title>

    <style type="text/css">
        .box1{
            width: 500px;
            height: 200px;
            background-color: red;

            color: rgba(85,26,139,0.73);

            /*上下删除线 overline line-through */
            text-decoration: underline;

            /*设置鼠标的形状*/
            cursor: pointer;

            /*设置首行缩进*/
            text-indent: 20px;

            font-size: 20px;

            /*left right center justify 两端对齐只针对英文  */
            text-align:justify;

            /*设置阴影 左右 上下 0-1 color */
            text-shadow:0px 0px 1px #fff;

            /*行高
                规律: 当行高=盒子的高度时,文本会垂直居中
            */
            line-height: 200px;
            text-align: center;

        }

    </style>

</head>
<body>

    <div class="box1">
        my name is alice
    </div>

    <a href="">天空飘个五个字</a>

</body>
</html>

8.背景
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>背景</title>

    <style type="text/css">
        #img{
            width: 990px;
            height: 980px;

            /*设置背景颜色*/
            /*background-color: yellowgreen;*/

            /*background-image: url("./images/homesmall1.png");*/

            /*!* repeat-x repeat-y no-repeat *!*/
            /*background-repeat: no-repeat;*/

            /*background-position: 10px 20px;*/

            /*简写*/
            /*background:url("./images/homesmall1.png") no-repeat 20px 30px yellowgreen;*/

            background: red;
            padding-top:10px;
            border: 5px solid blue;

        }
    </style>

</head>
<body>

    <div id="img">

    </div>


</body>
</html>

9.盒模型border
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>border</title>
    <style type="text/css">
        .wrap{
            width: 200px;
            height: 200px;
            background-color: #000000;

            /*
            border-top-width: 5px;
            border-bottom-width: 10px;
            border-left-width: 15px;
            border-right-width: 20px;

            border-top-color: red;
            border-bottom-color: yellowgreen;
            border-left-color: yellow;
            border-right-color: blue;


            border-top-style: solid;
            border-bottom-style: dashed;
            border-left-style: dotted;
            border-right-style: double;
            */

            /* 四个值 上 右 下 左 */
            /*
            border-style: dotted dashed double solid;
            border-width: 5px 10px 15px 20px;
            border-color: blue red yellow slateblue;
            */

            /* 三个值 上 左右 下*/
            /*
            border-style: dotted double solid;
            border-width: 5px 10px 20px;
            border-color: blue yellow slateblue;
            */

            /* 两个值 上下 左右 */
            /*
            border-style: dotted solid;
            border-width: 5px 20px;
            border-color: blue yellow;
            */

            /* 一个值 上下左右 */
            /*
            border-style: dotted;
            border-width: 20px;
            border-color: blue;
            */

            /*简写*/
            /*border: 10px solid yellow;*/

        }
    </style>


</head>
<body>
    <div class="wrap"></div>
</body>
</html>

10.margin
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>margin</title>
    <style type="text/css">
        .box1{
            width: 200px;
            height: 200px;
            background-color: #ff5776;

            /*
            margin-top: 20px;
            margin-left: 40px;
            margin-bottom: 20px;
            margin-right: 40px;
            */

            /* 上 右 下 左*/
            /*margin: 20px 30px 40px 50px;*/

            /* 上 左右 下*/
            /*margin: 20px 30px 40px;*/

            /* 上下 左右*/
            /*margin: 20px 40px;*/

            /*margin-bottom: 50px;*/

            /* margin: 0 auto;使盒子元素水平居中  */
            margin: 0 auto;

        }
        /*
        总结:
            垂直方向的特殊性;水平方向没有这种特性;
            当两个垂直外边距相遇时,会形成一个外边距,称为 外边距合并,已大的为基准!!
            注意:父子级盒子 嵌套 设置外边距 会形成外边距合并,影响页面布局,
                  解决办法:给父元素添加 border
            解释:
                所有毗邻的两个或更多盒元素的margin将会合并为一个margin共享之(以最大的为基准)。
                毗邻的定义为:
                    同级或者嵌套的盒元素,并且他们之间没有非空内容,padding或者border分割。
                解决办法:(子债父还)
                    1.父级或子元素使用浮动或者绝对定位absolute,浮动或绝对定位不参与margin的折叠。
                    2.父级overflow:hidden
                    3.父级设置padding(破坏非空白的折叠条件)
                    4.父级设置border
        */
        .box2{
            width: 200px;
            height: 200px;
            background-color: yellow;
            margin-top: 100px;
            border: 1px solid chartreuse;
            /*padding: 1px;*/
            /*overflow: hidden;*/
        }
        .child{
            width: 100px;
            height: 100px;
            background-color: #868686;
            margin-top: 150px;
        }

        span{
            background-color: #ff5776;
        }
        .span1{
            margin-left: 40px;
        }
        .span2{
            margin-left:20px;
        }
        

    </style>
</head>
<body>
    <div class="box1"></div>
    <div class="box2">
        <div class="child"></div>
    </div>

    <span class="span1">12345</span>
    <span class="span2">54321</span>

</body>
</html>

11.padding
<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="UTF-8">
    <title>padding</title>
    <style type="text/css">
        .box1{
            width: 100px;
            height: 200px;
            background-color: #ff5776;

            /*
            内边距:内容区域到边框的距离
                内边距会扩大元素所在的区域
            注意:
                为元素设置内边距 只能影响自己,不会影响其他的元素;
            */

            /*
            padding-left: 20px;
            padding-top: 30px;
            padding-right: 40px;
            padding-bottom: 40px;
            */

            /*
            padding: 10px 20px 30px 40px;
            padding: 10px 30px 50px;
            padding: 10px 20px;
            */
            padding: 10px;

        }
    </style>

</head>
<body>
    <div class="box1">
        12345
    </div>
</body>
</html>

 



posted @ 2018-04-29 22:50  Alice的小屋  阅读(224)  评论(0编辑  收藏  举报