使用旋转,只需计算角度
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.wrap {
position: relative;
margin: 200px;
width: 200px;
height: 200px;
}
.wrap .center-wrap {
width: 100%;
height: 100%;
background-color: #4472c4;
border-radius: 50%;
}
.wrap .around-wrap {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.wrap .around-wrap .around-item {
position: absolute;
left: 50%;
top: 50%;
width: 100px;
height: 40px;
background-color: #4472c4;
}
.wrap .around-wrap .around-item:nth-child(1) {
transform: translate(-50%, -50%) rotate(0deg) translateY(-180px) rotateZ(0deg);
}
.wrap .around-wrap .around-item:nth-child(2) {
transform: translate(-50%, -50%) rotate(45deg) translateY(-180px) rotateZ(-45deg);
}
.wrap .around-wrap .around-item:nth-child(3) {
transform: translate(-50%, -50%) rotate(90deg) translateY(-180px) rotateZ(-90deg);
}
.wrap .around-wrap .around-item:nth-child(4) {
transform: translate(-50%, -50%) rotate(135deg) translateY(-180px) rotateZ(-135deg);
}
.wrap .around-wrap .around-item:nth-child(5) {
transform: translate(-50%, -50%) rotate(180deg) translateY(-180px) rotateZ(-180deg);
}
.wrap .around-wrap .around-item:nth-child(6) {
transform: translate(-50%, -50%) rotate(225deg) translateY(-180px) rotateZ(-225deg);
}
.wrap .around-wrap .around-item:nth-child(7) {
transform: translate(-50%, -50%) rotate(270deg) translateY(-180px) rotateZ(-270deg);
}
.wrap .around-wrap .around-item:nth-child(8) {
transform: translate(-50%, -50%) rotate(315deg) translateY(-180px) rotateZ(-315deg);
}
</style>
</head>
<body>
<div class="wrap">
<div class="center-wrap"></div>
<div class="around-wrap">
<div class="around-item"></div>
<div class="around-item"></div>
<div class="around-item"></div>
<div class="around-item"></div>
<div class="around-item"></div>
<div class="around-item"></div>
<div class="around-item"></div>
<div class="around-item"></div>
</div>
</div>
</body>
</html>
不知道你这个问题是否已经解决, 如果还没有解决的话:要实现圆形布局内容的居中,可以通过CSS和jQuery来操作DOM元素以及样式属性来实现。以下是一个可能的解决方案:
css .circle-container { width: 400px; height: 400px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
append()
方法将生成的内容插入到圆形布局容器中。具体的内容生成可以根据请求来动态生成。javascript var content = '<div class="circle-content">Hello World</div>'; $('.circle-container').append(content);
```javascript var container = $('.circle-container'); var content = $('.circle-content'); var radius = container.width() / 2; var contentWidth = content.width(); var contentHeight = content.height();
var contentLeft = radius - contentWidth / 2; var contentTop = radius - contentHeight / 2;
content.css({ left: contentLeft, top: contentTop }); ```
这样,通过CSS和jQuery的结合,就可以实现圆形布局内容的居中显示。以上是一种可能的解决方案,具体实现还需要根据具体需求来进行调整。