【零基础入门前端系列】—属性选择器和定位(二十)

简介: 【零基础入门前端系列】—属性选择器和定位(二十)

一、属性选择器

利用的是HTML属性

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
       input[type='text']{
            width: 200px;
            height: 50px;
        }
        div[class^=t]{
            color:red;
        }
        div[class*=o]{
            color:aqua;
        }
        div[class$=o]{
            color:pink;
        }
    </style>
</head>
<body>
 <input type="text">
 <input type="passwo">
 <button type="reset">重置</button>
 <div class="one">1</div>
 <div class="two">2</div>
 <div class="three">3</div>
 <div class="four">4</div>
 <div class="five">5</div>
</body>
</html>

二、定位

  • position:元素定位
  • 作用:相对于默认位置移动到需要的位置
    属性值:


三、z-index

z-index属性是用来设置元素的堆叠顺序或者叫做元素层级,z-index的值越大,元素的层级越高。当元素发生重叠时,层级高的元素会覆盖在层级低的元素的上面,使层级低的元素的重叠部分被遮盖住。

当父元素设置了z-index属性时,子元素的z-index属性只与同级元素和父级元素作比较时才有意义,与其他元素对比时无意义。此时子元素与父元素外的所有的外部元素进行堆叠层级顺序对比时,都以父元素的z-index属性值为准进行对比,子元素本身的z-index属性值无效。

当父元素未设置了z-index属性,子元素的z-index属性与父元素外的所有的外部元素进行堆叠层级顺序对比时,都以元素本身的z-index属性值为准进行对比。

  • z-index:number;堆叠顺序
  • 取值越大,层级越往上,可以取负值,但是不推荐
  • 必须配合定位(relative、absolute、fixed)使用,同时定位,后面的元素在上面
  • z-index属性的值分为三种:auto(默认值):与父元素的层级相等,如各级祖先元素均未设置该属性,则类似于0、number:整数数值,在兼容所有浏览器的情况下取值范围是 -2147483584 ~ 2147483584,数值越大,层级越高,数值越小,层级越低、inherit:继承父元素的z-index的属性值
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
.box{
    width: 600px;
    height: 600px;
    background-color: skyblue;
    position: relative;
    margin: 100px;
}
.one{
    width: 200px;
    height: 200px;
    background-color: red;
    position: relative;
    top:50px;
    left:50px;
    z-index: 999;
}
.two{
    width: 200px;
    height: 200px;
    background-color: orange;
    position: absolute;
    left:20px;
    top:20px;
}
.three{
    width: 20px;
    height: 20px;
    background-color: red;
    bottom: 20px;
    right: 20px;
    position:fixed;
}
    </style>
</head>
<body>
    <div class="box">
        <div class="one"></div>
        <div class="two"></div>
        <div class="three"></div>
    </div>
</body>
</html>

练习

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      .banner {
        width: 303px;
        height: 375px;
        position: relative;
      }
      .banner > img {
        width: 100%;
      }
      .text{
        width: 100%;
        height: 88.5px;
        background-color: red;
        position: absolute;
        left:0;
        bottom:20px;
      }
    </style>
  </head>
  <body>
    <div class="banner">
      <img src="/images/2.jpg" alt="" />
      <div class="text">
      </div>
    </div>
  </body>
</html>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            width: 350px;
            height: 250px;
            background-color: red;
            position: relative;
            overflow: hidden;
        }
        .box>img {
            width: 100%;
            height: 250px;
        }
        .hidden {
            width: 350px;
            height: 250px;
            background-color: rgba(0, 0, 0, .5);
            position: absolute;
            left: 100%;
            top: 0;
        }
        .box:hover>.hidden {
            left: 0;
        }
    </style>
</head>
<body>
    <div class="box">
        <img src="/images/food.webp" alt="">
        <div class="hidden">
        </div>
    </div>
</body>
</html>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        a {
            text-decoration: none;
            color: #000000;
        }
        ul li {
            list-style-type: none;
            float: left;
            margin-left: 20px;
            height: 80px;
            line-height: 80px;
        }
        .nav {
            width: 100%;
            height: 80px;
            background-color: pink;
            position: relative;
        }
        .nav-list {
            /* 此100%是相对于父元素的 */
            width: 100%;
            height: 251px;
            background-color: skyblue;
            position: absolute;
            left: 0;
            top: 100%;
            display: none;
        }
        .nav li:hover>.nav-list {
            display: block;
        }
    </style>
</head>
<body>
    <div class="nav">
        <ul>
            <li><a href="#">首页</a></li>
            <li><a href="#">手机</a>
                <div class="nav-list">
                </div>
            </li>
            <li><a href="#">首页</a></li>
            <li><a href="#">首页</a></li>
            <li><a href="#">首页</a></li>
            <li><a href="#">首页</a></li>
        </ul>
    </div>
</body>
</html>


相关文章
|
6月前
|
前端开发
【前端|CSS系列第3篇】CSS盒模型、浮动及定位
【前端|CSS系列第3篇】CSS盒模型、浮动及定位
106 1
|
前端开发 测试技术
你发现一个bug,如何定位这个是前端还是后端缺陷?建议收藏
你发现一个bug,如何定位这个是前端还是后端缺陷?建议收藏
490 0
|
2月前
|
前端开发
前端基础(十三)_定位position、定位层级z-index
本文讲解了CSS中的定位机制,包括静态定位、相对定位、绝对定位和固定定位,并通过实例展示了如何使用这些定位方法调整元素位置。同时,还介绍了z-index属性的使用,解释了如何通过调整z-index值来改变定位元素的层叠顺序。
34 6
前端基础(十三)_定位position、定位层级z-index
|
2月前
|
前端开发
|
3月前
|
前端开发 容器
解锁CSS定位奥秘,从迷茫到精通,让你的网页布局“稳如老狗”,引领前端新潮流!
【8月更文挑战第23天】本文深入探讨了Web前端开发中CSS定位的三大基石:相对定位、绝对定位与固定定位。通过具体示例,展示了各种定位方式的特点及应用场景。相对定位可在不影响布局的情况下微调元素位置;绝对定位使元素完全脱离文档流,适用于精确控制位置的需求;固定定位则确保元素始终固定于浏览器窗口特定位置,不受页面滚动影响。这些技巧对于实现复杂网页布局至关重要。
58 0
|
6月前
|
前端开发 JavaScript 容器
CSS属性:定位属性+案例讲解:博雅互动 前端开发入门笔记(五)
CSS属性:定位属性+案例讲解:博雅互动 前端开发入门笔记(五)
54 1
|
移动开发 JavaScript 前端开发
【前端用法】html5实现地理位置定位(JS获取当前地理位置的方法)
【前端用法】html5实现地理位置定位(JS获取当前地理位置的方法)
267 0
|
6月前
|
前端开发 开发者 容器
【Web 前端】相对定位,绝对定位,固定定位的区别?
【4月更文挑战第22天】【Web 前端】相对定位,绝对定位,固定定位的区别?
|
前端开发 JavaScript 算法
前端(七)——React框架的定位与应用场景解析
前端(七)——React框架的定位与应用场景解析
488 0
|
前端开发
HTML5+CSS3前端入门教程---从0开始通过一个商城实例手把手教你学习PC端和移动端页面开发第7章定位
HTML5+CSS3前端入门教程---从0开始通过一个商城实例手把手教你学习PC端和移动端页面开发第7章定位
162 0