关于CSS时钟的问题

<!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>
            *{margin: 0;padding: 0;}
            ul{list-style: none;}
            #time{width: 400px;height: 400px;border: 10px solid black;border-radius: 50%;margin: 30px auto;position: relative;}
            #time ul{width: 100%;height: 100%;position: relative;}
            #time ul li{width: 4px;height: 10px;background: black;position: absolute;left: 50%;
                        margin: 0 -3px;
                        /* transform: translateX(30px); */
                        transform-origin: center 200px;
            }
            .shizhen{width: 12px;height: 60px;background: black;position: absolute;left: 50%;top: 50%;
                  margin: -60px 0 0 -6px;}
                  
            .fenzhen{width: 10px;height: 100px;background: black;position: absolute;left: 50%;top: 50%;
            /* transform: translateY(-100px) translateX(-5px); */
            margin: -100px 0 0 -5px;
            }
            .miaozhen{width: 6px;height: 180px;background: black;position: absolute;left: 50%;top: 50%;
                  /* transform: translateY(-180px) translateX(-3px); */
                  margin: -180px 0 0 -3px;
            }









            /* #time ul li:nth-child(2){transform: rotateZ(6deg);} */
      </style>
</head>
<body>
      <div id="time">
            <ul>
                  <!-- <li></li>
                  <li></li> -->
            </ul>
            <div class="shizhen"></div>
            <div class="fenzhen"></div>
            <div class="miaozhen"></div>
      </div>
      <script>
           var ul = document.querySelector("ul");
           for(var i=0;i<60;i++){
                 var li= document.createElement("li");
                 li.style.transform = 'rotate('+(i*6) + 'deg)';
                 if( i%5==0){
                       li.style.height='20px'
                       li.style.width='6px'
                 }
                 ul.appendChild(li);

           }

      </script>
</body>
</html>

两个问题:1

#time ul li{width: 4px;height: 10px;background: black;position: absolute;left: 50%;

                        margin: 0 -3px;

                        /* transform: translateX(30px); */

                        transform-origin: center 200px;

            }

这段代码中为什么我用transform无法移动li而用margin可以?

2:如果要将li移动到正中间不是应该向左移动50%后再移动宽度的一半吗?

那么这个宽度的一半应该是-2px,但是我移动-2px无法跟下面的分针对齐,只有移动-3px才能正好对齐?

 

  1. 一个是平移  一个是旋转 性质不一样