CSS极坐标的实例代码
CSS doesn't directly provide built-in support for polar coordinates. However, you can achieve polar coordinate positioning and effects using various CSS techniques and creative workarounds. Here's an example of how to create a simple polar coordinate chart using CSS:
HTML:
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Polar Coordinate Chart</title>
<style>
/* Basic styles */
body {
margin: 0;
padding: 0;
font-family: sans-serif;
background-color: #f0f0f0;
}
/* Chart container */
.chart-container {
position: relative;
width: 400px;
height: 400px;
margin: 0 auto;
border: 1px solid #ccc;
border-radius: 50%;
background-color: #fff;
}
/* Axis */
.axis {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
height: 1px;
background-color: #333;
}
/* Data points */
.data-point {
position: absolute;
top: 50%;
left: 50%;
transform-origin: center;
transform: translate(-50%, -50%);
width: 8px;
height: 8px;
border-radius: 50%;
background-color: #007bff;
}
</style>
</head>
<body>
<div class="chart-container">
<div class="axis"></div>
<div class="data-point" style="transform: rotate(30deg) translate(100px, 0)"></div>
<div class="data-point" style="transform: rotate(60deg) translate(120px, 0)"></div>
<div class="data-point" style="transform: rotate(90deg) translate(140px, 0)"></div>
<div class="data-point" style="transform: rotate(120deg) translate(160px, 0)"></div>
<div class="data-point" style="transform: rotate(150deg) translate(180px, 0)"></div>
<div class="data-point" style="transform: rotate(180deg) translate(200px, 0)"></div>
<div class="data-point" style="transform: rotate(210deg) translate(220px, 0)"></div>
<div class="data-point" style="transform: rotate(240deg) translate(240px, 0)"></div>
<div class="data-point" style="transform: rotate(270deg) translate(260px, 0)"></div>
<div class="data-point" style="transform: rotate(300deg) translate(280px, 0)"></div>
<div class="data-point" style="transform: rotate(330deg) translate(300px, 0)"></div>
<div class="data-point" style="transform: rotate(360deg) translate(320px, 0)"></div>
</div>
</body>
</html>
Explanation:
HTML Structure:
div
container with the class chart-container
to hold the chart.div
with the class axis
represents the central axis.div
elements with the class data-point
are added to represent the data points. Each data point has a style
attribute that specifies its position using transform: rotate()
and translate()
.CSS Styles:
.axis
is styled with