1

我正在使用这个 JS Fiddle:http: //jsfiddle.net/BY3tz/1/

请注意,当您从 CSS 类中删除positionlefttop属性时dotParent,黑点在框内居中。

我正在寻找一种方法来保持黑点居中(垂直和水平),同时保留上面提到的 3 个属性,以便我可以更改lefttop属性以将框定位在任何地方,并且黑点将保持居中。

这可能吗?谁能看到我在dot课堂上做错了什么?

4

3 回答 3

5

对类的一些调整.dot

.dot {
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50px;
    margin-left: -5px; // Half of the width * (-1)
    margin-top: -5px; // Half of the height * (-1)
    top: 50%;
    left: 50%;
    background: #000;
    -webkit-border-radius: 50px;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

http://jsfiddle.net/BY3tz/2/

于 2013-04-10T20:56:13.813 回答
2

添加了点包装器,因此.dot相对于新包装器,

<div class="dotParent">
    <div class="dot-wrapper">
        <div class="dot"></div>
    </div><!-- end dot-wrapper -->
</div>

新样式。

.dot-wrapper {
    position:relative;
    width:100%;
    height:100%;
}

添加到 .dot 类

.dot {
    position:absolute;
    top:45%;
    left:45%;
}

http://jsfiddle.net/BY3tz/5/

于 2013-04-10T20:59:09.357 回答
1

将 dotParent div 中的位置属性更改为“相对”。由于它是父级 Div,因此需要将其定位为相对,以便其子级将其作为参考点。

.dotParent {
    position: relative;
    top: 150px;
    left: 50px;
    height: 68px;
    width: 68px;
    border: 1px solid Black;
}

http://jsfiddle.net/BY3tz/6/

于 2013-04-10T20:57:44.287 回答