RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 1598981
Accepted
Elijah_Pris
Elijah_Pris
Asked:2024-11-06 14:24:45 +0000 UTC2024-11-06 14:24:45 +0000 UTC 2024-11-06 14:24:45 +0000 UTC

从 HTML 对象中减去内部区域

  • 772

如何从径向元素中减去内部图形(或看起来像是被减去)?

现在是这样的

原来的

我希望它看起来像这样

我想

原始代码 https://codepen.io/oliver_merz/pen/zqXZQG

.cssplay-menu {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  margin: 20px auto 0;
  width: 100%;
  max-width: 568px;
  height: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.cssplay-menu>div {
  position: relative;
  margin-bottom: 250px;
  padding-bottom: 100%;
  max-width: 100%;
  height: 0;
}

.cssplay-menu * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.cssplay-menu .holder {
  position: relative;
  padding-bottom: 100%;
  max-width: 100%;
  height: 0;
  overflow: hidden;
}

.cssplay-menu input {
  position: absolute;
  display: none;
}

.cssplay-menu .segment {
  position: absolute;
  z-index: 100;
  left: 50%;
  top: 50%;
  margin-left: -48%;
  margin-top: -48%;
  width: 96%;
  height: 96%;
  border-radius: 50%;
  overflow: hidden;
  transform: scale(0);
  transition: 0.5s cubic-bezier(.58, 2.4, 0.5, 0.5);
  transition: 0.5s ease;
}

.cssplay-menu .curve-upper {
  position: absolute;
  left: 1%;
  top: 1%;
  width: 98%;
  height: 98%;
  background: #fff;
  border-radius: 50%;
  transform: scale(0);
  transition: 0s;
}

.cssplay-menu .curve-lower {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
  transform: rotate(-140deg) scale(0);
  transition: 0s;
}

.cssplay-menu .curve {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  background: #8b0000;
  transform-origin: left top;
  transform: rotate(0deg) skewY(50deg);
}

.cssplay-menu .segment label {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 50%;
  height: 50%;
  background: #008080;
  border: 1px solid #fff;
  cursor: pointer;
  transform-origin: left top;
  transition: 0.25s cubic-bezier(0, 0, 1, 1);
  transition: 0.25s ease;
}

.cssplay-menu .segment label span {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  right: 15px;
  bottom: 25px;
  margin: auto;
  width: 35px;
  height: 35px;
  background-position: center center;
  background-repeat: no-repeat;
}

.cssplay-menu .segment label:nth-of-type(1) {
  transform: rotate(-140deg) skewY(50deg);
}

.cssplay-menu .segment label:nth-of-type(2) {
  transform: rotate(-100deg) skewY(50deg);
}

.cssplay-menu .segment label:nth-of-type(3) {
  transform: rotate(-60deg) skewY(50deg);
}

.cssplay-menu .segment label:nth-of-type(4) {
  transform: rotate(-20deg) skewY(50deg);
}

.cssplay-menu .segment label:nth-of-type(5) {
  transform: rotate(20deg) skewY(50deg);
}

.cssplay-menu .segment label:nth-of-type(6) {
  transform: rotate(60deg) skewY(50deg);
}

.cssplay-menu .segment label:nth-of-type(7) {
  transform: rotate(100deg) skewY(50deg);
}

.cssplay-menu .segment label:nth-of-type(8) {
  transform: rotate(140deg) skewY(50deg);
}

.cssplay-menu .segment label:nth-of-type(9) {
  transform: rotate(180deg) skewY(50deg);
}

.cssplay-menu .segment label:nth-of-type(1) span {
  background: url(cubic/truck-white.png);
  transform: skewY(-50deg) rotate(0deg);
}

.cssplay-menu .segment label:nth-of-type(2) span {
  background: url(cubic/location-white.png);
  transform: skewY(-50deg) rotate(-40deg);
}

.cssplay-menu .segment label:nth-of-type(3) span {
  background: url(cubic/mail-white.png);
  transform: skewY(-50deg) rotate(-80deg);
}

.cssplay-menu .segment label:nth-of-type(4) span {
  background: url(cubic/pen-white.png);
  transform: skewY(-50deg) rotate(-120deg);
}

.cssplay-menu .segment label:nth-of-type(5) span {
  background: url(cubic/tag-white.png);
  transform: skewY(-50deg) rotate(-160deg);
}

.cssplay-menu .segment label:nth-of-type(6) span {
  background: url(cubic/wallet-white.png);
  transform: skewY(-50deg) rotate(-200deg);
}

.cssplay-menu .segment label:nth-of-type(7) span {
  background: url(cubic/video-white.png);
  transform: skewY(-50deg) rotate(-240deg);
}

.cssplay-menu .segment label:nth-of-type(8) span {
  background: url(cubic/cup-white.png);
  transform: skewY(-50deg) rotate(-280deg);
}

.cssplay-menu .segment label:nth-of-type(9) span {
  background: url(cubic/cup-white.png);
  transform: skewY(-50deg) rotate(-320deg);
}

.cssplay-menu .center {
  display: block;
  position: absolute;
  z-index: 200;
  left: 50%;
  top: 50%;
  margin-left: -20%;
  margin-top: -20%;
  width: 40%;
  height: 40%;
  border-radius: 50%;
  background: #8b0000 url(cubic/settings.png) no-repeat center center;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 0 0 2px #fff;
}

.cssplay-menu #toggle:checked+.holder .segment {
  transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
  transition: 0.5s ease;
  transform: scale(1);
}

.cssplay-menu #toggle:checked+.holder .center {
  transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
  transition: 0.5s ease;
  transform: scale(1.2);
}

.cssplay-menu #toggle:checked+.holder .curve-upper {
  transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
  transition: 1s ease;
  transform: scale(1);
}

.cssplay-menu #toggle:checked+.holder .curve-lower {
  transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
  transition: 1s ease;
  transform: rotate(-140deg) scale(1);
}

.cssplay-menu #c1:checked~.holder .segment label:nth-of-type(1),
.cssplay-menu #c2:checked~.holder .segment label:nth-of-type(2),
.cssplay-menu #c3:checked~.holder .segment label:nth-of-type(3),
.cssplay-menu #c4:checked~.holder .segment label:nth-of-type(4),
.cssplay-menu #c5:checked~.holder .segment label:nth-of-type(5),
.cssplay-menu #c6:checked~.holder .segment label:nth-of-type(6),
.cssplay-menu #c7:checked~.holder .segment label:nth-of-type(7),
.cssplay-menu #c8:checked~.holder .segment label:nth-of-type(8),
.cssplay-menu #c9:checked~.holder .segment label:nth-of-type(9) {
  background: #eb8c00;
}

.cssplay-menu #c1:checked~#toggle:checked~.holder .curve-lower {
  transform: rotate(-140deg)
}

.cssplay-menu #c2:checked~#toggle:checked~.holder .curve-lower {
  transform: rotate(-100deg)
}

.cssplay-menu #c3:checked~#toggle:checked~.holder .curve-lower {
  transform: rotate(-60deg)
}

.cssplay-menu #c4:checked~#toggle:checked~.holder .curve-lower {
  transform: rotate(-20deg)
}

.cssplay-menu #c5:checked~#toggle:checked~.holder .curve-lower {
  transform: rotate(20deg)
}

.cssplay-menu #c6:checked~#toggle:checked~.holder .curve-lower {
  transform: rotate(60deg)
}

.cssplay-menu #c7:checked~#toggle:checked~.holder .curve-lower {
  transform: rotate(100deg)
}

.cssplay-menu #c8:checked~#toggle:checked~.holder .curve-lower {
  transform: rotate(140deg)
}

.cssplay-menu #c9:checked~#toggle:checked~.holder .curve-lower {
  transform: rotate(180deg)
}

.cssplay-menu .sub {
  position: absolute;
  left: 50%;
  top: 100%;
  margin-left: -50%;
  width: 100%;
  height: 0;
  overflow: hidden;
}

.cssplay-menu .sub dl {
  position: absolute;
  top: -190px;
  left: 50%;
  margin-left: -25%;
  padding: 0;
  width: 50%;
  opacity: 0;
  transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
  transition: all 0.5s ease;
}

.cssplay-menu .sub dl dt {
  text-align: center;
  font: bold 16px/20px 'Lato', arial, sans-serif;
  color: #8b0000;
}

.cssplay-menu .sub dl dd {
  margin: 0;
  padding: 0;
  text-align: center;
  font: normal 15px/20px 'Lato', arial, sans-serif;
  color: #000;
}

.cssplay-menu .sub dl dd a {
  color: #004040;
}

.cssplay-menu #c1:checked~#toggle:checked~.sub dl:nth-of-type(1),
.cssplay-menu #c2:checked~#toggle:checked~.sub dl:nth-of-type(2),
.cssplay-menu #c3:checked~#toggle:checked~.sub dl:nth-of-type(3),
.cssplay-menu #c4:checked~#toggle:checked~.sub dl:nth-of-type(4),
.cssplay-menu #c5:checked~#toggle:checked~.sub dl:nth-of-type(5),
.cssplay-menu #c6:checked~#toggle:checked~.sub dl:nth-of-type(6),
.cssplay-menu #c7:checked~#toggle:checked~.sub dl:nth-of-type(7),
.cssplay-menu #c8:checked~#toggle:checked~.sub dl:nth-of-type(8),
.cssplay-menu #c9:checked~#toggle:checked~.sub dl:nth-of-type(9) {
  top: 20px;
  opacity: 1;
  transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5) 0.5s;
  transition: opacity 0.5s ease, top 0.5s ease 0.5s;
}

.cssplay-menu #c1:checked~#toggle:checked~.sub,
.cssplay-menu #c2:checked~#toggle:checked~.sub,
.cssplay-menu #c3:checked~#toggle:checked~.sub,
.cssplay-menu #c4:checked~#toggle:checked~.sub,
.cssplay-menu #c5:checked~#toggle:checked~.sub,
.cssplay-menu #c6:checked~#toggle:checked~.sub,
.cssplay-menu #c7:checked~#toggle:checked~.sub,
.cssplay-menu #c8:checked~#toggle:checked~.sub,
.cssplay-menu #c9:checked~#toggle:checked~.sub {
  height: 250px
}
<div class="cssplay-menu">
  <div>
    <input type="radio" id="c1" name="segment" checked="checked">
    <input type="radio" id="c2" name="segment">
    <input type="radio" id="c3" name="segment">
    <input type="radio" id="c4" name="segment">
    <input type="radio" id="c5" name="segment">
    <input type="radio" id="c6" name="segment">
    <input type="radio" id="c7" name="segment">
    <input type="radio" id="c8" name="segment">
    <input type="radio" id="c9" name="segment">
    <input type="checkbox" id="toggle" checked="checked">
    <div class="holder">
      <div class="segment">
        <label for="c1"><span></span></label>
        <label for="c2"><span></span></label>
        <label for="c3"><span></span></label>
        <label for="c4"><span></span></label>
        <label for="c5"><span></span></label>
        <label for="c6"><span></span></label>
        <label for="c7"><span></span></label>
        <label for="c8"><span></span></label>
        <label for="c9"><span></span></label>
      </div>
      <div class="curve-lower">
        <div class="curve"></div>
      </div>
      <div class="curve-upper"></div>
      <label for="toggle" class="center"></label>
    </div>
    <div class="sub">
      <dl>
        <dt>SUB MENU #1</dt>
        <dd><a href="#url">Item #1.1</a></dd>
        <dd><a href="#url">Item #1.2</a></dd>
        <dd><a href="#url">Item #1.3</a></dd>
        <dd><a href="#url">Item #1.4</a></dd>
      </dl>
      <dl>
        <dt>SUB MENU #2</dt>
        <dd><a href="#url">Item #2.1</a></dd>
        <dd><a href="#url">Item #2.2</a></dd>
        <dd><a href="#url">Item #2.3</a></dd>
      </dl>
      <dl>
        <dt>SUB MENU #3</dt>
        <dd><a href="#url">Item #3.1</a></dd>
        <dd><a href="#url">Item #3.2</a></dd>
        <dd><a href="#url">Item #3.3</a></dd>
        <dd><a href="#url">Item #3.4</a></dd>
      </dl>
      <dl>
        <dt>SUB MENU #4</dt>
        <dd><a href="#url">Item #4.1</a></dd>
        <dd><a href="#url">Item #4.2</a></dd>
        <dd><a href="#url">Item #4.3</a></dd>
        <dd><a href="#url">Item #4.4</a></dd>
        <dd><a href="#url">Item #4.5</a></dd>
      </dl>
      <dl>
        <dt>SUB MENU #5</dt>
        <dd><a href="#url">Item #5.1</a></dd>
        <dd><a href="#url">Item #5.2</a></dd>
        <dd><a href="#url">Item #5.3</a></dd>
        <dd><a href="#url">Item #5.4</a></dd>
      </dl>
      <dl>
        <dt>SUB MENU #6</dt>
        <dd><a href="#url">Item #6.1</a></dd>
        <dd><a href="#url">Item #6.2</a></dd>
        <dd><a href="#url">Item #6.3</a></dd>
      </dl>
      <dl>
        <dt>SUB MENU #7</dt>
        <dd><a href="#url">Item #7.1</a></dd>
        <dd><a href="#url">Item #7.2</a></dd>
        <dd><a href="#url">Item #7.3</a></dd>
        <dd><a href="#url">Item #7.4</a></dd>
      </dl>
      <dl>
        <dt>SUB MENU #8</dt>
        <dd><a href="#url">Item #8.1</a></dd>
        <dd><a href="#url">Item #8.2</a></dd>
        <dd><a href="#url">Item #8.3</a></dd>
        <dd><a href="#url">Item #8.4</a></dd>
      </dl>
      <dl>
        <dt>SUB MENU #9</dt>
        <dd><a href="#url">Item #9.1</a></dd>
        <dd><a href="#url">Item #9.2</a></dd>
        <dd><a href="#url">Item #9.3</a></dd>
        <dd><a href="#url">Item #9.4</a></dd>
      </dl>
    </div>
  </div>
</div>

html
  • 1 1 个回答
  • 65 Views

1 个回答

  • Voted
  1. Best Answer
    UModeL
    2024-11-08T01:33:25Z2024-11-08T01:33:25Z

    如果目标只是中心圆的透明度(而且,我认为,这也适用于从段到指示器的间隙),那么您可以使用具有径向渐变的常规蒙版,而无需求助于 SVG 和剪辑路径:

    body { min-height: 100vh; background: center / cover url('https://umodel.narod.ru/shareweb/image/rainy_night_city.jpg'); }
    
    .cssplay-menu {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      position: relative;
      margin: 20px auto 0;
      width: 100%;
      max-width: 568px;
      height: 0;
      -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
      transform: translate3d(0, 0, 0);
    }
    
    .cssplay-menu>div {
      position: relative;
      margin-bottom: 250px;
      padding-bottom: 100%;
      max-width: 100%;
      height: 0;
    }
    
    .cssplay-menu * {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
    }
    
    .cssplay-menu .holder {
      position: relative;
      padding-bottom: 100%;
      max-width: 100%;
      height: 0;
      overflow: hidden;
      /* Маска для прозрачности центрального круга */
      --mask: radial-gradient(#0000 34.65%, #ffff 34.95% 67.5%, #0000 67.8% 69.5%, #ffff 69.7%);
      -webkit-mask: var(--mask); mask: var(--mask);
    }
    
    .cssplay-menu input {
      position: absolute;
      display: none;
    }
    
    .cssplay-menu .segment {
      position: absolute;
      z-index: 100;
      left: 50%;
      top: 50%;
      margin-left: -48%;
      margin-top: -48%;
      width: 96%;
      height: 96%;
      border-radius: 50%;
      overflow: hidden;
      transform: scale(0);
      transition: 0.5s cubic-bezier(.58, 2.4, 0.5, 0.5);
      transition: 0.5s ease;
    }
    
    .cssplay-menu .curve-upper {
      position: absolute;
      left: 1%;
      top: 1%;
      width: 98%;
      height: 98%;
      background: #fff;
      border-radius: 50%;
      transform: scale(0);
      transition: 0s;
    }
    
    .cssplay-menu .curve-lower {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      border-radius: 50%;
      overflow: hidden;
      transform: rotate(-140deg) scale(0);
      transition: 0s;
    }
    
    .cssplay-menu .curve {
      display: block;
      position: absolute;
      left: 50%;
      top: 50%;
      width: 100%;
      height: 100%;
      background: #8b0000;
      transform-origin: left top;
      transform: rotate(0deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label {
      display: block;
      position: absolute;
      left: 50%;
      top: 50%;
      width: 50%;
      height: 50%;
      background: #008080;
      border: 1px solid #fff;
      cursor: pointer;
      transform-origin: left top;
      transition: 0.25s cubic-bezier(0, 0, 1, 1);
      transition: 0.25s ease;
    }
    
    .cssplay-menu .segment label span {
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      right: 15px;
      bottom: 25px;
      margin: auto;
      width: 35px;
      height: 35px;
      background-position: center center;
      background-repeat: no-repeat;
    }
    
    .cssplay-menu .segment label:nth-of-type(1) {
      transform: rotate(-140deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(2) {
      transform: rotate(-100deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(3) {
      transform: rotate(-60deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(4) {
      transform: rotate(-20deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(5) {
      transform: rotate(20deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(6) {
      transform: rotate(60deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(7) {
      transform: rotate(100deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(8) {
      transform: rotate(140deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(9) {
      transform: rotate(180deg) skewY(50deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(1) span {
      background: url(cubic/truck-white.png);
      transform: skewY(-50deg) rotate(0deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(2) span {
      background: url(cubic/location-white.png);
      transform: skewY(-50deg) rotate(-40deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(3) span {
      background: url(cubic/mail-white.png);
      transform: skewY(-50deg) rotate(-80deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(4) span {
      background: url(cubic/pen-white.png);
      transform: skewY(-50deg) rotate(-120deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(5) span {
      background: url(cubic/tag-white.png);
      transform: skewY(-50deg) rotate(-160deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(6) span {
      background: url(cubic/wallet-white.png);
      transform: skewY(-50deg) rotate(-200deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(7) span {
      background: url(cubic/video-white.png);
      transform: skewY(-50deg) rotate(-240deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(8) span {
      background: url(cubic/cup-white.png);
      transform: skewY(-50deg) rotate(-280deg);
    }
    
    .cssplay-menu .segment label:nth-of-type(9) span {
      background: url(cubic/cup-white.png);
      transform: skewY(-50deg) rotate(-320deg);
    }
    
    .cssplay-menu .center {
      display: block;
      position: absolute;
      z-index: 200;
      left: 50%;
      top: 50%;
      margin-left: -20%;
      margin-top: -20%;
      width: 40%;
      height: 40%;
      border-radius: 50%;
      background: #8b0000 url(cubic/settings.png) no-repeat center center;
      overflow: hidden;
      cursor: pointer;
      box-shadow: 0 0 0 2px #fff;
    }
    
    .cssplay-menu #toggle:checked+.holder .segment {
      transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
      transition: 0.5s ease;
      transform: scale(1);
    }
    
    .cssplay-menu #toggle:checked+.holder .center {
      transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
      transition: 0.5s ease;
      transform: scale(1.2);
    }
    
    .cssplay-menu #toggle:checked+.holder .curve-upper {
      transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
      transition: 1s ease;
      transform: scale(1);
    }
    
    .cssplay-menu #toggle:checked+.holder .curve-lower {
      transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
      transition: 1s ease;
      transform: rotate(-140deg) scale(1);
    }
    
    .cssplay-menu #c1:checked~.holder .segment label:nth-of-type(1),
    .cssplay-menu #c2:checked~.holder .segment label:nth-of-type(2),
    .cssplay-menu #c3:checked~.holder .segment label:nth-of-type(3),
    .cssplay-menu #c4:checked~.holder .segment label:nth-of-type(4),
    .cssplay-menu #c5:checked~.holder .segment label:nth-of-type(5),
    .cssplay-menu #c6:checked~.holder .segment label:nth-of-type(6),
    .cssplay-menu #c7:checked~.holder .segment label:nth-of-type(7),
    .cssplay-menu #c8:checked~.holder .segment label:nth-of-type(8),
    .cssplay-menu #c9:checked~.holder .segment label:nth-of-type(9) {
      background: #eb8c00;
    }
    
    .cssplay-menu #c1:checked~#toggle:checked~.holder .curve-lower {
      transform: rotate(-140deg)
    }
    
    .cssplay-menu #c2:checked~#toggle:checked~.holder .curve-lower {
      transform: rotate(-100deg)
    }
    
    .cssplay-menu #c3:checked~#toggle:checked~.holder .curve-lower {
      transform: rotate(-60deg)
    }
    
    .cssplay-menu #c4:checked~#toggle:checked~.holder .curve-lower {
      transform: rotate(-20deg)
    }
    
    .cssplay-menu #c5:checked~#toggle:checked~.holder .curve-lower {
      transform: rotate(20deg)
    }
    
    .cssplay-menu #c6:checked~#toggle:checked~.holder .curve-lower {
      transform: rotate(60deg)
    }
    
    .cssplay-menu #c7:checked~#toggle:checked~.holder .curve-lower {
      transform: rotate(100deg)
    }
    
    .cssplay-menu #c8:checked~#toggle:checked~.holder .curve-lower {
      transform: rotate(140deg)
    }
    
    .cssplay-menu #c9:checked~#toggle:checked~.holder .curve-lower {
      transform: rotate(180deg)
    }
    
    .cssplay-menu .sub {
      position: absolute;
      left: 50%;
      top: 100%;
      margin-left: -50%;
      width: 100%;
      height: 0;
      overflow: hidden;
    }
    
    .cssplay-menu .sub dl {
      position: absolute;
      top: -190px;
      left: 50%;
      margin-left: -25%;
      padding: 0;
      width: 50%;
      opacity: 0;
      transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5);
      transition: all 0.5s ease;
    }
    
    .cssplay-menu .sub dl dt {
      text-align: center;
      font: bold 16px/20px 'Lato', arial, sans-serif;
      color: #8b0000;
    }
    
    .cssplay-menu .sub dl dd {
      margin: 0;
      padding: 0;
      text-align: center;
      font: normal 15px/20px 'Lato', arial, sans-serif;
      color: #000;
    }
    
    .cssplay-menu .sub dl dd a {
      color: #004040;
    }
    
    .cssplay-menu #c1:checked~#toggle:checked~.sub dl:nth-of-type(1),
    .cssplay-menu #c2:checked~#toggle:checked~.sub dl:nth-of-type(2),
    .cssplay-menu #c3:checked~#toggle:checked~.sub dl:nth-of-type(3),
    .cssplay-menu #c4:checked~#toggle:checked~.sub dl:nth-of-type(4),
    .cssplay-menu #c5:checked~#toggle:checked~.sub dl:nth-of-type(5),
    .cssplay-menu #c6:checked~#toggle:checked~.sub dl:nth-of-type(6),
    .cssplay-menu #c7:checked~#toggle:checked~.sub dl:nth-of-type(7),
    .cssplay-menu #c8:checked~#toggle:checked~.sub dl:nth-of-type(8),
    .cssplay-menu #c9:checked~#toggle:checked~.sub dl:nth-of-type(9) {
      top: 20px;
      opacity: 1;
      transition: 0.5s cubic-bezier(.58, 3, 0.5, 0.5) 0.5s;
      transition: opacity 0.5s ease, top 0.5s ease 0.5s;
    }
    
    .cssplay-menu #c1:checked~#toggle:checked~.sub,
    .cssplay-menu #c2:checked~#toggle:checked~.sub,
    .cssplay-menu #c3:checked~#toggle:checked~.sub,
    .cssplay-menu #c4:checked~#toggle:checked~.sub,
    .cssplay-menu #c5:checked~#toggle:checked~.sub,
    .cssplay-menu #c6:checked~#toggle:checked~.sub,
    .cssplay-menu #c7:checked~#toggle:checked~.sub,
    .cssplay-menu #c8:checked~#toggle:checked~.sub,
    .cssplay-menu #c9:checked~#toggle:checked~.sub {
      height: 250px
    }
    <div class="cssplay-menu">
      <div>
        <input type="radio" id="c1" name="segment" checked="checked">
        <input type="radio" id="c2" name="segment">
        <input type="radio" id="c3" name="segment">
        <input type="radio" id="c4" name="segment">
        <input type="radio" id="c5" name="segment">
        <input type="radio" id="c6" name="segment">
        <input type="radio" id="c7" name="segment">
        <input type="radio" id="c8" name="segment">
        <input type="radio" id="c9" name="segment">
        <input type="checkbox" id="toggle" checked="checked">
        <div class="holder">
          <div class="segment">
            <label for="c1"><span></span></label>
            <label for="c2"><span></span></label>
            <label for="c3"><span></span></label>
            <label for="c4"><span></span></label>
            <label for="c5"><span></span></label>
            <label for="c6"><span></span></label>
            <label for="c7"><span></span></label>
            <label for="c8"><span></span></label>
            <label for="c9"><span></span></label>
          </div>
          <div class="curve-lower">
            <div class="curve"></div>
          </div>
          <div class="curve-upper"></div>
          <label for="toggle" class="center"></label>
        </div>
        <div class="sub">
          <dl>
            <dt>SUB MENU #1</dt>
            <dd><a href="#url">Item #1.1</a></dd>
            <dd><a href="#url">Item #1.2</a></dd>
            <dd><a href="#url">Item #1.3</a></dd>
            <dd><a href="#url">Item #1.4</a></dd>
          </dl>
          <dl>
            <dt>SUB MENU #2</dt>
            <dd><a href="#url">Item #2.1</a></dd>
            <dd><a href="#url">Item #2.2</a></dd>
            <dd><a href="#url">Item #2.3</a></dd>
          </dl>
          <dl>
            <dt>SUB MENU #3</dt>
            <dd><a href="#url">Item #3.1</a></dd>
            <dd><a href="#url">Item #3.2</a></dd>
            <dd><a href="#url">Item #3.3</a></dd>
            <dd><a href="#url">Item #3.4</a></dd>
          </dl>
          <dl>
            <dt>SUB MENU #4</dt>
            <dd><a href="#url">Item #4.1</a></dd>
            <dd><a href="#url">Item #4.2</a></dd>
            <dd><a href="#url">Item #4.3</a></dd>
            <dd><a href="#url">Item #4.4</a></dd>
            <dd><a href="#url">Item #4.5</a></dd>
          </dl>
          <dl>
            <dt>SUB MENU #5</dt>
            <dd><a href="#url">Item #5.1</a></dd>
            <dd><a href="#url">Item #5.2</a></dd>
            <dd><a href="#url">Item #5.3</a></dd>
            <dd><a href="#url">Item #5.4</a></dd>
          </dl>
          <dl>
            <dt>SUB MENU #6</dt>
            <dd><a href="#url">Item #6.1</a></dd>
            <dd><a href="#url">Item #6.2</a></dd>
            <dd><a href="#url">Item #6.3</a></dd>
          </dl>
          <dl>
            <dt>SUB MENU #7</dt>
            <dd><a href="#url">Item #7.1</a></dd>
            <dd><a href="#url">Item #7.2</a></dd>
            <dd><a href="#url">Item #7.3</a></dd>
            <dd><a href="#url">Item #7.4</a></dd>
          </dl>
          <dl>
            <dt>SUB MENU #8</dt>
            <dd><a href="#url">Item #8.1</a></dd>
            <dd><a href="#url">Item #8.2</a></dd>
            <dd><a href="#url">Item #8.3</a></dd>
            <dd><a href="#url">Item #8.4</a></dd>
          </dl>
          <dl>
            <dt>SUB MENU #9</dt>
            <dd><a href="#url">Item #9.1</a></dd>
            <dd><a href="#url">Item #9.2</a></dd>
            <dd><a href="#url">Item #9.3</a></dd>
            <dd><a href="#url">Item #9.4</a></dd>
          </dl>
        </div>
      </div>
    </div>

    • 2

相关问题

  • 具有非均匀背景的块内的渐变边框

  • 离开页脚

  • 如何将三个字段的数据收集到一封电子邮件中?

  • Html 元素刚从父元素中出来

  • 如何在css中制作这个背景?

  • 如何制作带有斜条纹的背景?

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5