css-02

1. CSS复合选择器

  复合选择器是由两个或多个基础选择器,通过不同的方式组合而成的,目的是为了可以选择更准确更精细的目标元素标签。

1.1 并集选择器

  并集选择器)是各个选择器通过逗号连接而成的,任何形式的选择器(包括标签选择器、class类选择器,id选择器等),都可以作为并集选择器的一部分。如果某些选择器定义的样式完全相同,或部分相同,就可以利用并集选择器为它们定义相同的CSS样式。

 <style>

        /* 还有个需求是两个名字都加粗,字体大小都是32px */

        /* 并集选择器 */

        con1,

        con2{

            font-size: 32px;   /*不同标记组成的并集选择器*/

            font-weight: 700;

        }

    </style>

</head>

<body>

    <div class="con1 common">陈同学</div>

    <div class="con2 common">郭同学</div>

    <div class="con3"></div>

</body>

 

1.2 后代选择器(重点)

  后代选择器用来选择元素或元素组的后代。其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔,当标记发生嵌套时,内层标记就可以成为外层标记的后代。

 <style>

        /* 后代选择器->用来选择元素或则元素的子孙后代->精准选择

        中间用逗号隔开 */

        ul li  div span{

            color: pink;

        }

    </style>

</head>

<body>

    <ul>

        <li>

            <div>

                <span>胡同学</span>

            </div>

        </li>

        <li>

            <span>陈同学</span>

        </li>

    </ul>

</body>

1.3 子元素选择器(重点)

  子元素选择器只能选择作为某元素子元素的元素。子元素选择器只能选择作为某元素子元素(亲儿子)的元素。其写法就是把父级标签写在前面,子级标签写在后面,中间跟一个 > 进行连接

 <style>

        /* 某元素**子元素(亲儿子)**元素

        选择最近一级元素  用>隔开*/

        ul li>span{

            color: aliceblue;

        }

    </style>

</head>

<body>

    <ul>

        <li>

            <div>

                <span> 胡同学</span>

            </div>

        </li>

        <li>

            <span>陈同学</span>

        </li>

    </ul>

</body> 

2.标签显示模式(display)(重点)

2.1 块级元素(block-level)

    块元素在页面中以区域块的形式出现,其特点, 每个块元素通常都会独自占据一整行或多整行,可以对其设置宽度、高度、对齐等属性,常用于网页布局和网页结构的搭建。

常见的块元素有<h1>~<h6>、<p>、<div>、<ul>、<ol>、<li>等,其中<div>标签是最典型的块元素。

2.2 行内元素(inline-level)

  行内元素(内联元素)不占有独立的区域,其特点是,不必在新的一行开始,同时,也不强迫其他元素在新的一行显示。一个行内元素通常会和它前后的其他行内元素显示在同一行,它们不占有独立的区域。                           

  常见的行内元素有<a>、<strong>、<b>、<em>、<i>、<del>、<s>、<ins>、<u>、<span>等,其中<span>标签最典型的行内元素。

2.3 行内块元素(inline-block)

   在行内元素中有几个特殊的标签——<img />、<input />可以对它们设置宽高和对齐属性,有些资料可能会称它们为行内块元素。 

 <style>

        div{

            height: 200px;

            width: 200px;

        }

        span{

            height: 200px;

            width: 200px;

        }

        .img{

            height: 20px;

            width: 20px;

        }

    </style>

</head>

<body>

    <!-- p div span li ul dl dt dd a input img hr br em b strong i u ins s del h1-h6  -->

    <!-- div 块级元素 -->

    <!-- 1.独占一行2.可以设置宽和高 -->

    <div>Hello word</div>

    <div>Hello word</div>

    <!-- 行内元素 -->

    <!-- 1.不独占一行,不可以设置宽和高,宽高由内容撑开 -->

    <span>今天周五,明天干点啥?</span>

    <span>在宿舍睡觉</span>

    <!-- 行内块元素 -->

    <!-- 1不独占一行,可以设置宽高 -->

    <img src="./img/微信图片_20240614100800.jpg" alt="">

    <!-- 块级元素 p div h1-h6 li ul ol hr ... -->

    <!-- 行内元素 span a b strong i em u ins s del ... -->

    <!-- 行内块 img input button  -->

</body>

 2.4元素的转换(display)

  • 块转行内:display:inline;

  • 行内转块:display:block;

  • 块、行内元素转换为行内块: display: inline-block;

div{

            height: 200px;

            width: 200px;

            background-color: red;

            /* 显示模式转换 */

            display:inline ;

            /* display:inline-block; */

        } /* 显示模式转换 */

        span{

             /* 显示模式转换 */

            display:block;

            height: 200px;

            width: 200px;

            background-color: #0f0;

        }

    </style>

</head>

<body>

    <!-- 块级block -->

    <!-- 行内inline -->

    <!-- 行内块inline-block -->

    <div>内容1</div>

    <div>内容2</div>

    <span>行内元素</span>

    <!-- 标签嵌套关系 -->

    <!-- 块级元素可以放任何元素 -->

    <!-- 行内元素内只能放文本或其他行内元素 -->

    <!-- <p>段落1

        <p>段落2</p>

    </p> -->

    <a href="">

        <img src=".img\微信图片_20240614100800.jpg" alt="">

    </a>

</body>

 

 3.背景样式

 3.1背景颜色

.box {
    /* 下面3种写法是等价的 */
    background-color: red;
    background-color: rgb(255, 0, 0);   /*RGB 值*/
    background-color: #ff0000;   /*十六进制值*/

3.2 背景图片

 background-image: url(./img/微信图片_20240614100800.jpg); 

3.3 图片重复方式

.box {

  /* repeat 默认值,默认情况下,在水平和垂直方向上都重复*/

    background-repeat: repeat;    

    background-repeat: repeat-x;   <!--背景图像将在水平方向重复 -->

    background-repeat: repeat-y;   <!-- 背景图像将在垂直方向重复 -->

   background-repeat: no-repeat;   <!-- 背景图像将仅显示一次 -->

   }

3.4 图片位置(重点)

/*
    水平:left center right
    垂直:top  center bottom
*/

.box {
    background-position: 40px 40px;(水平位置、垂直位置)
    background-position: 20% 20%;     /*百分比 */
    background-position: right bottom;   /* 表示方位的单词*/
}

 4.精灵图

<style> 

        span{

            /* 选择工具直接框大小 */

            width: 25px;

            height: 25px;

            /* 背景图片 */

            background-image: url(./img/背景图.png);

            /* 背景定位 */

            background-position: 0 -106px;

        }

    </style>

</head>

<body>

    <span></span>

</body>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值