我試圖在CSS中轉換一些元素。我通過爲每個要轉換的元素添加一個單獨的選擇器使其工作正常,但當我爲所有元素使用一個選擇器(它們最終在同一個地方)時,它不起作用。有人能解釋爲什麼它不能像這樣工作嗎?CSS轉換 - 我需要一個解釋
body {
\t \t text-align: center;
\t }
\t .block {
\t \t position: relative;
\t \t display: inline-block;
\t }
\t .part1 {
\t \t font-family: Arial;
\t \t font-size: 50px;
\t \t font-weight: bold;
\t \t opacity: 0.2;
\t \t position: relative;
\t \t z-index: 1;
\t }
\t .part {
\t \t font-family: Arial;
\t \t font-size: 50px;
\t \t font-weight: bold;
\t \t opacity: 0.2;
\t \t position: absolute;
\t \t transition: top 2s ease-in, left 2s ease-in, right 2s ease-in;
\t }
\t .block .part:nth-child(2) {
\t \t top: 100px;
\t \t left: 100px;
\t }
\t .block .part:nth-child(3) {
\t \t top: 0;
\t \t left: 200px;
\t }
\t .block .part:nth-child(4) {
\t \t top: 0;
\t \t right: 200px;
\t }
\t .block .part:last-child {
\t \t top: 100px;
\t \t right: 100px;
\t }
\t .block .part1:hover ~ .part {
\t \t top: 0;
\t \t left: 0;
\t \t right: 0;
\t }
<span class="block">
\t \t <span class="part1">O</span>
\t \t <span class="part">O</span>
\t \t <span class="part">O</span>
\t \t <span class="part">O</span>
\t \t <span class="part">O</span>
</span>
正如你可以看到,左邊的屬性不爲第四和第五元素過渡。
這裏的工作片斷:
body {
\t \t text-align: center;
\t }
\t .block {
\t \t position: relative;
\t \t display: inline-block;
\t }
\t .part1 {
\t \t font-family: Arial;
\t \t font-size: 50px;
\t \t font-weight: bold;
\t \t opacity: 0.2;
\t \t position: relative;
\t \t z-index: 1;
\t }
\t .part {
\t \t font-family: Arial;
\t \t font-size: 50px;
\t \t font-weight: bold;
\t \t opacity: 0.2;
\t \t position: absolute;
\t \t transition: top 2s ease-in, left 2s ease-in, right 2s ease-in;
\t }
\t .block .part:nth-child(2) {
\t \t top: 100px;
\t \t left: 100px;
\t }
\t .block .part:nth-child(3) {
\t \t top: 0;
\t \t left: 200px;
\t }
\t .block .part:nth-child(4) {
\t \t top: 0;
\t \t right: 200px;
\t }
\t .block .part:last-child {
\t \t top: 100px;
\t \t right: 100px;
\t }
\t .block .part1:hover ~ .part:nth-child(2) {
\t \t top: 0;
\t \t left: 0;
\t }
\t .block .part1:hover ~ .part:nth-child(3) {
\t \t left: 0;
\t }
\t .block .part1:hover ~ .part:nth-child(4) {
\t \t right: 0;
\t }
\t .block .part1:hover ~ .part:last-child {
\t \t top: 0;
\t \t right: 0;
\t }
<span class="block">
\t \t <span class="part1">O</span>
\t \t <span class="part">O</span>
\t \t <span class="part">O</span>
\t \t <span class="part">O</span>
\t \t <span class="part">O</span>
\t </span>
爲什麼會出現這種情況?我無法在文檔中找到答案。
我認爲,從汽車到0的過渡也應該被動畫。 「猜猜我錯了...... Tnx @Juan – fpiskur