zoukankan      html  css  js  c++  java
  • 搭配锚点使用的小技巧,自定义控制定位元素距离可视区域顶部的距离。

    1. 前言

      相信大家会遇到这种情景,使用锚点来做到点击超链接的同时,定位到对应ID的元素,并且被定位的元素是紧紧靠在可视区域的顶部的。分享一种可以自定义控制距离顶部距离的小妙招。

    2. 一个正常的锚点例子 (复制到本地运行)

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style>
                body,ul{
                    margin: 0;
                    padding: 0;
                }
                li{
                    height: 400px;
                    border: 2px solid #000;
                    margin-bottom: 10px;
                    font-size: 60px;
                }
                div{
                    position: fixed;
                    top: 200px;
                    left: 300px;
                    display: flex;
                }
                div a{
                    padding: 0 20px;
                    border: 1px solid #000000;
                    line-height: 30px;
                }
            </style>
        </head>
        <body>
            <ul>
                <li id="li1">1</li>
                <li id="li2">2</li>
                <li id="li3">3</li>
                <li id="li4">4</li>
                <li id="li5">5</li>
                <li id="li6">6</li>
            </ul>
            <div>
                <a href="#li1">1</a>
                <a href="#li2">2</a>
                <a href="#li3">3</a>
                <a href="#li4">4</a>
                <a href="#li5">5</a>
                <a href="#li6">6</a>
            </div>
        </body>
    </html>

    3. 自定义高度的小妙招

    /*妙招*/
       li{
          /*padding-top  绝对定位后的元素距离顶部的距离*/
          padding-top: 300px;
          /*对应内边距,消除内边距撑开的距离*/
          margin-top: -300px;
       }

    4. 后语

      大家可能发现了第一个li跑到屏幕外了  ,  因为需要自定义这个距离的时候 , 要么顶部有固定定位的元素 ,这时body肯定会有padding的可以抵消,如果没有那么可以写在ul上来消除padding

     

  • 相关阅读:
    线程锁lock&rlock
    threading.local
    threading Event
    python中的eval 和 exec 和 execfile
    cloud-init 常见问题
    systemd
    cloud-init 的命令行
    原生js实现Promise
    js 指定位置插入html标签(可编辑div)
    js 实现复制粘贴文本过滤(保留文字和图片)
  • 原文地址:https://www.cnblogs.com/maopixin/p/8668940.html
Copyright © 2011-2022 走看看