辛苦老师检查我的作业。另外。老师,我不知道遮罩层是什么

辛苦老师检查我的作业。另外。老师,我不知道遮罩层是什么

<!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>Carrer Builder-愿你就业梦</title>

  <meta name="Keywords" content="职业建构,就业,高薪,专业" />

  <meta name="Decription" content="来career builder,获取你的心仪offer" />

  <link rel="stylesheet" href="./CSS/css1.css">

</head>

<body>

  <!-- 页面头部header -->

  <header>

    <div class="head2">

      <div class="logo">

        <img src="images/logo.png" alt="">

      </div>

      <nav>

        <ul>

          <li><a href="">HOME</a></li>

          <li><a href="">ABOUT</a></li>

          <li><a href="">GALLERY</a></li>

          <li><a href="">FACULTY</a></li>

          <li><a href="">EVENTS</a></li>

          <li><a href="">CONTACT</a></li>

        </ul>

      </nav>

    </div>

  </header>




  <!-- 页面banner -->

  <div class="banner">



    <div class="banner-picture">

      <img src="images/banner3.jpg" alt="">

    </div>



    <div class="banner-menu">

      <form action="">

        <p>

         <input type="text" placeholder="your Name">

        </p>

        <p>

          <input type="text" placeholder="your Phone">

        </p>

        <p>

          <input type="email" placeholder="your Email">

        </p>

        <p>

          <textarea name="" id="" cols="30" rows="10" placeholder="Write Your Connect Here"></textarea>

        </p>

        <p>

          <input class="last-input" type="submit" value="SEND MESSAGE">

        </p>

      </form>

    </div>




    <div class="banner-mask">banner遮罩层</div>

  </div>






  <!-- 页面主要内容 -->

  <main>

    <div class="about">

      <div class="about-top">

        <h2>ABOUT</h2>

        <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the

          industry's standard dummy text ever since the 1500s.</p>

      </div>

      <div class="about-bottom">

        <div class="about-bottom-left">

          <p>A WORD ABOUT US</p>

          <p> Praesent dignissim viverra est, sed bibendum ligula congue non. Sed ac nisl et felis gravida commodo?

            Suspendisse eget ullamcorper ipsum. Suspendisse diam amet.</p>

        </div>

        <div class="about-botto-middle">

          <img src="images/bb3.jpg" alt="">

        </div>

        <div class="about-bottom-right">

        </div>

      </div>

    </div>

    <div class="pictures-and-words">

      <!-- 图文混排区域 -->

      <!-- 1 -->

      <div class="part">

        <div class="pictures">

          <img src="images/b1.jpg" alt="">

        </div>

        <div class="words">

          <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry</p>

        </div>

      </div>

      <!-- 2 -->

      <div class="part">

        <div class="pictures">

          <img src="images/b2.jpg" alt="">

        </div>

        <div class="words">

          <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry</p>

        </div>

      </div>

      <!-- 3 -->

      <div class="part">

        <div class="pictures">

          <img src="images/b3.jpg" alt="">

        </div>

        <div class="words">

          <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry</p>

        </div>

      </div>

      <!-- 4 -->

      <div class="part">

        <div class="pictures">

          <img src="images/b4.jpg" alt="">

        </div>

        <div class="words">

          <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry</p>

        </div>

      </div>

    </div>

    <div class="gallery">

      <h2>GALLERY</h2>

      <div class="gallery-top">

        <p>Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a

          galley of type and scrambled it to make a type specimen book.</p>

      </div>

      <div class="gallery-bottom">

        <ul>

          <li>

            <dl>

              <dt><img src="images/03-01.jpg" alt=""></dt>

              <dd>Science</dd>

            </dl>

          </li>

          <li>

            <dl>

              <dt>

                <img src="images/03-02.jpg" alt="">

              </dt>

              <dd>Indoor Stadium</dd>

            </dl>

          </li>

          <li>

            <dl>

              <dt>

                <img src="images/03-03.jpg" alt="">

              </dt>

              <dd>Transportation</dd>

            </dl>

          </li>

          <li>

            <dl>

              <dt>

                <img src="images/03-04.jpg" alt="">

              </dt>

              <dd>Kids Room</dd>

            </dl>

          </li>

          <li>

            <dl>

              <dt>

                <img src="images/03-05.jpg" alt="">

              </dt>

              <dd>Meditation Classes</dd>

            </dl>

          </li>

          <li>

            <dl>

              <dt>

                <img src="images/03-05.jpg" alt="">

              </dt>

              <dd>Kids Play Ground</dd>

            </dl>

          </li>

        </ul>

      </div>

    </div>

  </main>

  <!-- 页面页脚 -->

  <footer>

    <p>&copy;imooc.com 京ICP备13046642号</p>

  </footer>

</body>

</html>



CSS





* {

  margin0;

  padding0;

}

/* header头部 */

header {

  width100%;

  height80px;

  background-color#07cbc9;

}

header .head2 {

  width1200px;

  height80px;

  /* 这个地方,logo的img和nav有一起的head2,所以让head2 水平居中在header里即可,上下撑满了,所有自动即为水平居中 */

  margin0 auto;

}

header .head2 .logo {

  floatleft;

  padding16px 0;

}

/* img有默认的间隙,会撑大父级的高度,建议将img转换为块元素清除间隙 ,这个我没发现有*/

header .head2 .logo img {

  displayblock;

}

/* nav和ul的宽度不用设置,由内容撑开 */

header .head2 nav {

  floatright;


  height80px;

}

header .head2 nav ul {

  list-stylenone;

  height80px;

}

header .head2 nav ul li {

  floatleft;

  margin-right20px;

}

header .head2 nav ul li:last-child {

  margin-right0;

}

header .head2 nav ul li a {

  displayinline-block;

  text-decorationnone;

  height80px;

  colorwhite;

  padding0 10px;

  text-aligncenter;

  line-height80px;

}

header .head2 nav ul li a:hover {

  background-colorrgba(2552552550.5);

  colorwhite;

}


/* banner */


.banner .banner-picture img {

  width100%;

  positionrelative;

}

.banner .banner-menu {

  positionabsolute;

  width504px;

  height320px;

  top50%;

  left50%;

  margin-top-160px;

  margin-left-252px;

}

.banner .banner-menu form {

  width504px;

  height320px;

}

.banner .banner-menu form p {

    margin-bottom20px;

}

.banner .banner-menu form p input {

  width504px;

  height40px;

  background-colorrgba(0000.5);

  border1px solid #808080;

  color#808080;

}

.banner .banner-menu form p textarea {

  width504px;

  height110px;

  background-colorrgba(0000.5);

  border1px solid #808080;

}

.banner .banner-menu form p input.last-input {

  width200px;

  height40px;

  background-colorrgba(0000.5);

  positionabsolute;

  left50%;

  margin-left-100px;

  border1px solid #808080;

}





正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,代码中存在以下问题:

1、优化建议:表单是banner区的,所以最好相对于banner定位:

http://img1.sycdn.imooc.com//climg/61066a6c095711d506300170.jpg

2、表单内容超出了父元素form:

http://img1.sycdn.imooc.com//climg/61066a980953e50508190162.jpg

原因是输入框有边框,该边框会增大输入框的宽度。建议调整输入框的宽度,让其总宽度与父元素form一致:

http://img1.sycdn.imooc.com//climg/61066b1e09efac3706270216.jpg

3、输入框的背景色应该是透明的,不是黑色:

http://img1.sycdn.imooc.com//climg/61066b5209d5251208160119.jpg

调整如下:

http://img1.sycdn.imooc.com//climg/61066b8c09f4ece106720443.jpg

http://img1.sycdn.imooc.com//climg/61066ba5092fffb506570327.jpg

3、遮罩就是图片上覆盖了一个元素,该元素与图片一样大,往往有半透明的背景色(问题解答)。此处遮罩可以使用div实现,颜色是黑色透明的:

http://img1.sycdn.imooc.com//climg/61066c59090001dc05760266.jpg

http://img1.sycdn.imooc.com//climg/61066c860986e6ec06520319.jpg

4、由于图片底下有默认间隙,所以页面效果上,遮罩会比图片高一块:

http://img1.sycdn.imooc.com//climg/61066cff0937529f10680378.jpg

建议将图片转成块级元素:

http://img1.sycdn.imooc.com//climg/61066d400951099a05690163.jpg

5、如下问题解答:

http://img1.sycdn.imooc.com//climg/61066d53090769b210520151.jpg

如果把上图样式去掉,则会发现头部与banner区中间会有一个缝隙,就是图片间隙造成的:

http://img1.sycdn.imooc.com//climg/61066d9e0905c6bf17520789.jpg

祝学习愉快!

  • qq_慕仰20210716 提问者 #1

    老师,您解答的第三点中,为什么遮罩层下边会比图片banner多出来一点呢,明明都一样大。而且我也不太

    明白为什么要单独设置遮罩层的z-index,不设置img的。而且不设置也是遮罩层在上的呀。


    http://img1.sycdn.imooc.com//climg/610684bf0974c7a806680346.jpg

    我也没有发现img下边有空隙啊老师,虽然我能看到浏览器上图片下边有空隙,但是检查元素看不到呢。

    2021-08-01 19:29:45
  • 同学你好,解答如下:

    1、遮罩层比图片大一点是因为图片底下有默认的间隙。该间隙不属于图片自身,图片还是盒模型中显示的那么大,只是占据的高度会比自身高度大一点。该空隙无法在盒模型上看到,只能通过页面效果查看。可以形象的理解成“你站在盒子里,但是没紧挨着盒子底部,被看不见摸不着的东西托起来了一段高度”,那么盒子的实际高度就要比你高一点(要留出间隙)。遮罩层与你所在的盒子一样大,所以肯定比你高一块。

    2、我们不是给遮罩层设置了z-index,而是给表单区设置了z-index:

    http://img1.sycdn.imooc.com//climg/6107487e094579f406110305.jpg

    http://img1.sycdn.imooc.com//climg/61074890098c0e6417720818.jpg

    目的是让表单覆盖在遮罩层上,否则遮罩层会覆盖在表单上。同学可以将该样式去掉,对不一下效果。

    祝学习愉快!

    2021-08-02 09:22:35
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师