css - 关于offsetLeft和offsetTop
大家讲道理
大家讲道理 2017-04-17 15:00:35
0
2
1028

offsetLeft不是当前元素的左外边框到包含元素的左内边框之间的像素距离吗?
为什么多出了8px

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>test2</title>
        <style media="screen">
            .cc{
                padding: 50px 30px;
            }
            .fc{
                background-color: blue;
                width:300px;
                height: 200px;
            }
        </style>
    </head>
    <body>
        <p class="cc">
            <p class="fc" >

            </p>
        </p>
    </body>
    <script type="text/javascript">
        var fc = document.querySelector('.fc');
        console.log(fc.offsetLeft+':'+fc.offsetTop);
    </script>
</html>

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

모든 응답(2)
巴扎黑

offsetLeftoffsetTopoffsetParent 요소를 기준으로 한 거리를 반환하는 반면, offsetParent는 요소의 가장 가까운 상위 위치 요소를 참조합니다. 위치가 지정된 요소가 없으면 문서 루트 노드입니다.

지금 출력하는 값에 본문 자체를 더한 값에는 8px의 여백이 있는데 이는 실제로 정확합니다.
body { margin:0 }을 추가하거나 상위 요소에 위치 지정을 추가하면 예상한 숫자가 출력됩니다.

迷茫

기본적으로 8px의 여백이 있습니다. 기본 스타일을 지우려면 *{margin:0;}을 사용하세요.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿