HTML CSS

css

1.css的三种应用方式

(1).行内样式:使用style属性来设置样式,不推荐使用(项目维护非常麻烦)

一般和js一起使用

(2).内嵌式:可以通过style 标签来实现,style标签要放在head标签中

项目中不推荐使用,练习时可以用

(3).外部样式:通过外部的css文件实现,使用link标签引入

项目中推荐使用第三种

优先级:就近原则,谁离元素近,谁生效.

<style>
        /* 选择器{属性;值}*/
        p{
            color:yellow;
        }
    </style>
    <link rel="stylesheet" href="css/css.css">
    <p style="color: red;">

2.字体样式

字体的大小尺寸

​ 字体家族(系列)

​ 体粗细 100~900整数

​ 字体样式:是否倾斜(倾斜)

​ 字体的连写(简写)

  <style>
        .p1{
            font-size: 30px;
            font-family: "华为彩云" "宋体";
            宽度 nomal 400 正常 700 bold加粗
            font-weight: bold;
			normal不倾斜  正常 italic
            font-style: italic;
        }
        .p2{
            font-size: 10px;
            font: italic bolder 50px "黑体" "仿宋"; 
        }
    </style>

3.基础选择器

​ 1.标签选择器:通过标签名,找到页面中所以这类标签,设置样式

​ 2.类选择器:在标签上添加clss属性,属性值就是类名

​ id选择器:一个标签只能有一个id,一个id只能选中一个标签

​ 4.通配符

 内嵌式
    <style>
    p{
        color:rebeccapurple;
    }
    a{
        color: gold;
    }
    .p1{
        background-color: hotpink;
    }
    .green{
        color: green;
    }
    #p2{
        color: gold;
    }
    *{
        color: blue;
    }
    </style>
    <p>
        1.标签选择器:通过标签名,找到页面中所以这类标签,设置样式<br/>
    </p>
    <p>
        例如:p{} --- 所有的p标签
    </p>
    <a href="#">asssss</a>
    <a href="#">dsssss</a>
    <p class="p1">
        2.类选择器:在标签上添加clss属性,属性值就是类名
    </p>
    <p class="p1 green">类名可以重复,一个类可以有多个类名,使用空格隔开</p>
    <p id="p2">
       3. id选择器:一个标签只能有一个id,一个id只能选中一个标签
    </p>

4.选择器优先级

​ 通配符 < 标签选择器 < 类选择器

<style>
        *{
            color: red;
        }
        p{
            color: yellow;
        }
        .a{
            color: blue;
        }
        #b{
            color: darkgreen;
        }
    </style>
    <p class="a" id="b">
        通配符 < 标签选择器 < 类选择器
    </p>

5.文本样式text

​ 1.文本方向 首行缩进

2.控制字母 capitalize 首字母大写

​ 3.空白处理

​ 4.单词距离

​ 5.文本缩进 em字体

​ 6.文本/图片 水平对齐居中方式 left左 center居中 right右

​ 7.去除下划线

​ 8.行高:把行高设置成父元素的高度,可以实现单行文本垂直居中

​ 9.字符间距

​ 10.文本装饰

 <style>
        p{
            color: red;
        }
        .p{
            text-indent: 2em;
            text-transform: uppercase;
            white-space: nowrap;
            word-spacing: 1em;
        }
        .p1{
            text-indent: 10px;
        }
        .P2{
            text-align: center;
        }
        a{
            text-decoration: none;
        }
        tr{
            text-align: center;
            background-color: aqua;
            line-height: 100px;
            letter-spacing: 10px;
            text-decoration: underline;
        }
    </style>
</head>
<body>
    <p>zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz</p>
    <p class="p1">
        文本缩进<br>
        首行缩进 aaaaaaaaaaaaaaaaaaaaaaaaa
    </p>
    <p class="p2">ssssssssssssssssssss</p>
    <a href="#">消除下划线</a>
    <table border="1" height="200px" width="200px">
        <tr>
            <td>姓名</td>
            <td>性别</td>
        </tr>
    </table>

6.div标签

1.div是一个块元素
    2.默认没有高度
    3.默认宽是父元素的100%
    4.div的作用,通常和css一起使用,div+css实现页面的布局
   <style>
        .a{
            background-color: antiquewhite;
            height: 400px;
            width: 400px;
        }
    </style>
</head>
<body>
    <div class="a">
        1
        2
        3
    </div>

7.背景

​ 背景颜色

​ 背景图片

​ 背景重复

​ no-repeat 不重复

​ repeat 默认值,重复

​ repeat-x水平重复

​ repeat-y垂直重复

​ 背景位置

 <style>
        body{
            height: 800px;
            background-color: yellow;
            background-image: url(img/faviconmn.ico);
            no-repeat 不重复
            repeat 默认值,重复
            repeat-x水平重复
            repeat-y垂直重复
            background-repeat: no-repeat;
            background-position:500px 200px;
            background: yellowgreen url(img/faviconmn.ico) no-repeat 500px 200px;
        }
    </style>

8.并集,交集

​ 1.男,88

​ 2.男胖子88

​ 3.女胖子88

​ 4.男,88 或者

<style>
        .s1,
        .s8{
            background-color: aqua;
        }
        .s1.s3.s8{
            color: yellow;
        }
        .s2.s3.s8{
            color:green;
        }
        .s1,.s8{
            font-size: 30px;
        }
    </style>
    <p>
        1.男s1   2.女s2
        3.胖子s3  4.瘦子s4
        5.富婆s5  6.穷鬼s6
        7.18s7    8.88s8
    </p>
    <span class="s1 s3 s8">男,胖子,88</span>
    <span class="s2 s3 s8">女,胖子,88</span>
    <span class="s1 s3 s8">男,胖子,88</span>
    <span class="s2 s4 s5 s7">女,瘦子,富婆,18</span>

9.高级选择器

​ 后代选择器

​ li标签中所以的span标签

​ 子选择器;直接后代

<style>
        li span {
            color: red;
        }
        li>span{
            font-size: 50px;
        }
    </style>
    <ul>
        <li>
            <p>你好<span>世界</span></p>
            <span>那你当初申请</span>
        </li>
        <li>
            <p>你好<span>世界</span></p>
            <span>那你当初申请</span>
        </li>
        <li>
            <p>你好<span>世界</span></p>
            <span>那你当初申请</span>
        </li>
    </ul>

10.伪类选择器

​ 鼠标移入

<style>
        p{
            background-color: yellowgreen;
        }
        p:hover{
            background-color: yellow;
        }
        h1:hover{
            color: red;
        }
        h2:hover i{
            color: red;
        }
    </style>
    <p>
        这是个p标签
    </p>
    <h1>
        这是h1
    </h1>
    <h2>
        <b>qqqqqqqqqqqqqqqqqqqqq</b>
        <i>iiiiiiiiiiiiiiiiiiiii</i>
    </h2>

11.元素类型display

​ 1.行内元素,不会自己换行,没有高和宽 a,b,strong,span

​ 2.块元素,独占一行,可以设置高和宽,默认宽度为100%,高度为内容高度,h1,h6,p,div

​ 3.行内块,可以有高和宽,但是不会自己换行,td,img

​ 4. 块元素,类似于h标签,可以有高宽,但是没有h标签的含义,高度默认由内容决定,宽默认的是100%

<style>
        a{
          /* block块,inline行内,inline-block行内块,none隐藏*/
          display: block;
          height: 300px;
          background-color: aqua;  
        }
        h3{
            display: inline;
            height: 300px;
            background-color: blue;
        }
        h1{
            /*行内块 */
            display: inline-block;
            height: 300px;
            width: 400px;
            background-color: yellow;
        }
        /* 隐藏元素*/
        P{
            display: none;
        }
        p{
            display: block;
        }
        .a{
            background-color: hotpink;
            height: 300px;
            width: 400px;
        }
    </style>
</head>
<body>
    <p>
      1
      2
      3
    </p>
    <a href="#">a1</a>
    <a href="#">a2</a>
    <h1>aaaaaaa</h1>
    <h3>vvvvv</h3>
    <h3>zzzzz</h3>
    <div class="a">
qqqqqqqqqqqqqqqqqqqqqqqqq
    </div>

12.clear清除浮动

 <style>
        .a{
            background-color: aqua;
        
        }
        .b{
            height: 30px;
            width: 300px;
            background-color: brown;
            float: left;
        }
        .c{
            height: 500px;
            width: 800px;
            background-color: aqua;
        }
        .d,
        .e{
            height: 200px;
            width: 400px;
            float: left;
            background-color: blue;
        }
        .e{
            background-color: red;
        }
        .f{
            /* 清除浮动,清除浮动对后边元素的影响 */
            /*clear: both;*/
            height: 300px;
            width: 800px;
            background-color: brown;
        }
        .cl::after,
        .cl::before{
            content: "";
            display:table;
        }
        .cl::after{
            clear: both;
        }
        .bb{
            height: 80px;
            width: 800px;
            background-color: blue;
            float: left;
        }
        .cc{
            height: 200px;
            background-color: aqua;
        }
    </style>
    <div class="a">
    <div class="b"></div>
    </div>
    <div class="c">
        <div class="d"></div>
        <div class="e"></div>
        <div class="f cl"></div>
    </div>
    <div class="aa cl">
        <div class="bb">bb</div>
    </div>
    <div class="cc">cc</div>

13.使用无序列表导航

​ 1.去掉圆点

​ 2.让li水平排列

​ 3.加上间距

​ 4.文字垂直居中

 <style>
        ul{
            list-style: none;
        }
        ul li{
            float: left;
            padding: 0 10px;
            background-color: aqua;
            height: 50px;
            line-height: 50px;
        }
        ul li:hover{
            background-color: wheat;
        }
    </style>
    <ul>
        <li>现在</li>
        <li>距离</li>
        <li>前面</li>
        <li>新年</li>
        <li>给你</li>
        <li>物质</li>
        <li>本来</li>
        <li>小说</li>
    </ul>

14.浮动布局

 <style>
        .head{
            height: 40px;
            background-color: brown;
        }
        .center{
            width: 1226px;
            width: 800px;
            /* 水平居中 */
            margin: 0 auto;
            background-color: antiquewhite;
        }
        .a{
            height: 100px;
            background-color: aqua;
        }
        .b{
            height: 460px;
            width: 234px;
            background-color: rgb(147, 222, 135);
            float: left;
        }
        .c{
            height: 460px;
            width: 992px;
            background-color: blue;
            float: left;   
        }
        .d{
            height: 500px;
            background-color: red;
            /* 清楚浮动(浮动所带来的影响) */
            clear: both;
        }
    </style>
    <div class="head"></div>
    <div class="center">
        <div class="a"></div>
        <div class="b"></div>
        <div class="c"></div>
        <div class="d"></div>
    </div>

15.nav导航

​ l.去除内边距和外边距

​ 2.去除样式

​ 3.横过来 调整距离 垂直居中

 <style>
        .nav{
            height: 50px;
            background-color: pink;
        }
        ul{
            height: 50px;
            width: 800px;
            /*l.去除内边距和外边距*/
            padding: 0;
            margin: 0 auto;
            /*2.去除样式*/
            list-style: none;
        }
        li{
            /*3.横过来*/
            float: left;
            /*调整距离*/
           padding: 0 35px;
            /*垂直居中*/
            line-height: 50px;
            font-size: 16px;
        }
        a{
            color: azure;
            text-decoration: none;
        }
        li:hover{
            background-color: #080;
        }
    </style>
    <div class="nav">
    <ul>
        <li><a href="#">链接1</a></li>
        <li><a href="#">链接2</a></li>
        <li><a href="#">链接3</a></li>
        <li><a href="#">链接4</a></li>
        <li><a href="#">链接5</a></li>
        <li><a href="#">链接6</a></li>
    </ul>
    </div>

16.结构伪类选择器

​ 1.ul中li标签

​ 2.隔行变色 偶数:2n even

​ 3.奇数:2n+1 2n-1 odd

<style>
        /* ul中li标签的第一个 */
        ul li:first-child{
            background-color:#cc1e1e;
        }
        /* ul中li标签最后一个 */
        ul li:last-child{
            background-color: #4ed70a;
        }
        /* ul中的li标签的第2个 */
        ul li:nth-child(2){
            background-color: #d7d00a;
        }
        /* ul中的li标签的倒数第2个 */
        ul li:nth-last-child(2){
            background-color: #d7d00a;
        }
        /* 隔行变色 */
        /* 偶数:2n even */
        .a p:nth-child(2n){
            background-color: yellow;
        }
        /* 奇数: 2n+1 2n-1 odd */
        .a p:nth-child(odd){
            background-color: green;
        }
        /* 前2个 */
        .a p:nth-child(-n+2){
            color: #cc1e1e;
        }
        /* 后2个 */
        .a p:nth-last-child(-n+2){
            color: #3709be;
        }
        /* 从个 */
    </style>
</head>
<body>
<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
</ul>
<div class="a">
    <p>1</p>
    <p>2</p>
    <p>3</p>
    <p>4</p>
    <p>5</p>
    <p>6</p>
</div>

17.绝对定位

​ 绝对定位:相对于有定位的父元素进行移动如果父元素没有定位,找父元素的父元素,直到body 脱离标准流,原来的位置不保留一般和相对定位一起使用.

<style>
        .a{
            height: 300px;
            background-color: aqua;
            position: relative;
        }
        .b{
            height: 200px;
            width: 400px;
            background-color: red;
            position: absolute;
            left: 0px;
            top: 300px;
        }
        .c{
            height: 300px;
            background-color: blue;
        }
    </style>
    <div class="a">
        <div class="b"></div>
    </div>
    <div class="c"></div>

18.相对定位

​ 相对定位:相对于自己进行移动 不会脱离标准文档流 保留原来位置

  <style>
        div{
            height: 300px;
            width: 800px;
        }
        .a{
            background-color: aqua;
        }
        .b{
            background-color: yellowgreen;
            position: relative;
            top: 50px;
            left: 50px;
        }
        .c{
            background-color: green;
        }
    </style>
    <div class="a">a</div>
    <div class="b">b</div>
    <div class="c">c</div>

19.固定定位

​ 固定定位:现对于浏览器进行移动脱离标准文档流.

 <style>
        body{
            height: 5000px;
            background-image: url();
        }
        .a{
            background-color: aqua;
            height: 400px;
            width: 100px;
            /*固定定位*/
            position: fixed;
            right: 0px;
            top: 200px;
        }
    </style>
</head>
<body>
    <p>
yyyyyyyyyyyyyyyyyyy
    </p>

20.其他表单

1. 下拉列表  input中需要list属性,值和 datalist 中的id值一致
2.  带输入框的下拉
3. 分组下拉
4. 多行文本域:多行文本域可以自由调整大小
5. 提交按钮 普通按钮 重置按钮 提交按钮 图片按钮
<form action="#" method="get">
        <select name="s">
            <option value="北京">北京</option>
            <option>南京</option>
            <option>东京</option>
            <option selected>西京</option>
        </select><br>
        <input type="text" name="a" list="sr">
        <datalist id="sr">
            <option>中国</option>
            <option>米国</option>
            <option>小人国</option>
            <option></option>
        </datalist><br>
        <select name="b">
            <optgroup label="菠萝">
                <option>情歌</option>
                <option>蓓蓓</option>
            </optgroup>
            <optgroup label="苹果">
                <option>辣椒</option>
                <option>篱黑</option>
            </optgroup>
        </select><br>
        <textarea name="s" cols="30" rows="10"></textarea>
        <hr>
        性别:
        <label><input type="radio" name="sex" value="">
        </label>
        <label><input type="radio" name="sex" value="">
        </label><br>
       
        <label for="aaa">姓名:</label>
        <input type="text" name="name" id="aaa">

        <br>
        <button>提交按钮</button>
        <button type="button">普通按钮</button>
        <button type="reset">重置按钮</button>
        <button type="submit">提交按钮</button>
        <button><img src="img/下载.png"> </button>
    </form>

21.flex布局

​ 给父元素加上弹性布局 :display: 把父元素变成了弹性容器父元素的直接子元素会变成弹性盒子 弹性盒子默认按照主轴方向排列相当于添加了一个浮动

 <style>
        ul{
            padding: 0;
            margin: 0;
            list-style: none;
            display: flex;
            /* 从终点开始排列 */
            justify-content: flex-end;
            /* 主轴居中 */
            justify-content: center;
            /* 空白间距均分在弹性盒子两侧*/
            justify-content: space-around;
            /* 空白间距均分在相邻盒子之间 */
            justify-content: space-between;
            /* 弹性盒子与容器之间间距相等 */
            justify-content: space-evenly;
        }
        img{
            height: 40px;
        }
    </style>
</head>
<body>
    <ul>
        <li><img src="" alt=""></li>
        <li><img src="" alt=""></li>
        <li><img src="" alt=""></li>
        <li><img src="" alt=""></li>
        <li><img src="" alt=""></li>
    </ul>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值