css实现中性化设计表单控件集合代码

代码语言:html

所属分类:表单美化

代码描述:css实现中性化设计控件集合代码,包含时钟、播放暂停、搜索、tab选项卡、导航、滑竿、开关、勾选、按钮、单选等UI组件。

代码标签: css 中性化 设计 表单 控件 集合

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">


    <link href="https://fonts.googleapis.com/css?family=Poppins:400,600,700&display=swap" rel="stylesheet">

    <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">


    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link type="text/css" rel="stylesheet" href="//repo.bfw.wiki/bfwrepo/css/font-awesome-4.7.0/css/font-awesome.min.css">


    <style>
        :root {
          --primary-light: #8abdff;
          --primary: #6d5dfc;
          --primary-dark: #5b0eeb;
          --white: #FFFFFF;
          --greyLight-1: #E4EBF5;
          --greyLight-2: #c8d0e7;
          --greyLight-3: #bec8e4;
          --greyDark: #9baacf;
        }
        
        *, *::before, *::after {
          margin: 0;
          padding: 0;
          box-sizing: inherit;
        }
        
        html {
          box-sizing: border-box;
          font-size: 62.5%;
          overflow-y: scroll;
          background: var(--greyLight-1);
        }
        @media screen and (min-width: 900px) {
          html {
            font-size: 75%;
          }
        }
        
        .container {
          min-height: 100vh;
          display: flex;
          justify-content: center;
          align-items: center;
          font-family: "Poppins", sans-serif;
          background: var(--greyLight-1);
        }
        
        .components {
          width: 75rem;
          height: 40rem;
          border-radius: 3rem;
          box-shadow: 0.8rem 0.8rem 1.4rem var(--greyLight-2), -0.2rem -0.2rem 1.8rem var(--white);
          padding: 4rem;
          display: grid;
          grid-template-columns: 17.6rem 19rem 20.4rem;
          grid-template-rows: repeat(autofit, -webkit-min-content);
          grid-template-rows: repeat(autofit, min-content);
          grid-column-gap: 5rem;
          grid-row-gap: 2.5rem;
          align-items: center;
        }
        
        /*  SWITCH  */
        .switch {
          grid-column: 1/2;
          display: grid;
          grid-template-columns: repeat(2, -webkit-min-content);
          grid-template-columns: repeat(2, min-content);
          grid-gap: 3rem;
          justify-self: center;
        }
        .switch input {
          display: none;
        }
        .switch__1, .switch__2 {
          width: 6rem;
        }
        .switch__1 label, .switch__2 label {
          display: flex;
          align-items: center;
          width: 100%;
          height: 3rem;
          box-shadow: 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
          background: rgba(255, 255, 255, 0);
          position: relative;
          cursor: pointer;
          border-radius: 1.6rem;
        }
        .switch__1 label::after, .switch__2 label::after {
          content: "";
          position: absolute;
          left: 0.4rem;
          width: 2.1rem;
          height: 2.1rem;
          border-radius: 50%;
          background: var(--greyDark);
          transition: all 0.4s ease;
        }
        .switch__1 label::before, .switch__2 label::before {
          content: "";
          width: 100%;
          height: 100%;
          border-radius: inherit;
          background: linear-gradient(330deg, var(--primary-dark) 0%, var(--primary) 50%, var(--primary-light) 100%);
          opacity: 0;
          transition: all 0.4s ease;
        }
        .switch input:checked ~ label::before {
          opacity: 1;
        }
        .switch input:checked ~ label::after {
          left: 57%;
          background: var(--greyLight-1);
        }
        
        /*  CHECKBOX  */
        .checkbox {
          grid-column: 1/2;
          display: grid;
          grid-template-columns: repeat(2, 6rem);
          grid-gap: 3rem;
          justify-content: center;
        }
        .checkbox input {
          display: none;
        }
        .checkbox__1, .checkbox__2 {
          width: 6rem;
          display: flex;
          justify-content: center;
        }
        .checkbox__1 label, .checkbox__2 label {
          box-shadow: 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
          cursor: pointer;
          position: relative;
          display: flex;
          justify-content: center;
          align-items: center;
          border-radius: 0.5rem;
          width: 2.8rem;
          height: 2.8rem;
        }
        .checkbox__1 label:hover i, .checkbox__2 label:hover i {
          color: var(--primary);
        }
        .checkbox__1 label i, .checkbox__2 label i {
          font-size: 1.8rem;
          font-weight: 700;
          color: var(--greyDark);
          transition: 0.3s ease;
        }
        .checkbox__1 input:checked ~ label, .checkbox__2 input:checked ~ label {
          box-shadow: inset 0.2rem 0.2rem 0.5rem var(--greyLight-2), inset -0.2rem -0.2rem 0.5rem var(--white);
        }
        .checkbox__1 input:checked ~ label i, .checkbox__2 input:checked ~ label i {
          color: var(--primary);
        }
        
        /*  RADIO  */
        .radio {
          grid-column: 1/2;
          display: grid;
          grid-template-columns: repeat(2, 1fr);
          justify-items: center;
        }
        .radio input {
          display: none;
        }
        .radio__1 input:checked ~ label, .radio__2 input:checked ~ label {
          box-shadow: inset 0.2rem 0.2rem 0.5rem var(--greyLight-2), inset -0.2rem -0.2rem 0.5rem var(--white);
        }
        .radio__1 input:checked ~ label::after, .radio__2 input:checked ~ label::after {
          background: var(--primary);
        }
        .radio__1 label, .radio__2 label {
          box-shadow: 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
          position: relative;
          display: flex;
          justify-content: center;
          align-items: center;
          cursor: pointer;
          width: 2.8rem;
          height: 2.8rem;
          border-radius: 50%;
        }
        .radio__1 label:hover::after, .radio__2 label:hover::after {
          background: var(--primary);
        }
        .radio__1 label::after, .radio__2 label::after {
          content: "";
          position: absolute;
          width: 1.4rem;
          height: 1.4rem;
          background: var(--greyDark);
          border-radius: 50%;
          transition: 0.3s ease;
        }
        
        /*  BUTTONS  */
        .btn {
          width: 15rem;
          height: 4rem;
          border-radius: 1rem;
          box-shadow: 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
          justify-self: center;
          display: flex;
          align-items: center;
          justify-content: center;
          cursor: pointer;
          transition: 0.3s ease;
        }
        .btn__primary {
          grid-column: 1/2;
          grid-row: 4/5;
          background: var(--primary);
          box-shadow: inset 0.2rem 0.2rem 1rem var(--primary-light), inset -0.2rem -0.2rem 1rem var(--primary-dark), 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
          color: var(--greyLight-1);
        }
        .btn__primary:hover {
          color: var(--white);
        }
        .btn__primary:active {
          box-shadow: inset 0.2rem 0.2rem 1rem var(--primary-dark), inset -0.2rem -0.2rem 1rem var(--primary-light);
        }
        .btn__secondary {
          grid-column: 1/2;
          grid-row: 5/6;
          color: var(--greyDark);
        }
        .btn__secondary:hover {
          color: var(--primary);
        }
        .btn__secondary:active {
          box-shadow: inset 0.2rem 0.2rem 0.5rem var(--greyLight-2), inset -0.2rem -0.2rem 0.5rem var(--white);
        }
        .btn p {
          font-size: 1.6rem;
        }
        
        /*  CLOCK  */
        .clock {
          grid-column: 2/3;
          grid-row: 1/3;
          width: 12rem;
          height: 12rem;
          justify-self: center;
          box-shadow: 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
          border-radius: 50%;
          display: flex;
          justify-content: center;
          align-items: center;
          position: relative;
        }
        .clock .hand {
          position: absolute;
          transform-origin: bottom;
          bottom: 6rem;
          border-radius: 0.2rem;
          z-index: 200;
        }
        .clock .hours {
          width: 0.4rem;
          height: 3.2rem;
          background: var(--greyLight-3);
        }
        .clock .minutes {
          width: 0.4rem;
          height: 4.6rem;
          background: var(--greyDark);
        }
        .clock .seconds {
          width: 0.2rem;
          height: 5.2rem;
          background: var(--primary);
        }
        .clock .point {
          position: absolute;
          width: 0.8rem;
          height: 0.8rem;
          border-radius: 50%;
          background: var(--primary);
          z-index: 300;
        }
        .clock .marker {
          width: 95%;
          height: 95%;
          border-radius: 50%;
          position: relative;
          box-shadow: inset 0.2rem 0.2rem 0.5rem var(--greyLight-2), inset -0.2rem -0.2rem 0.5rem var(--white);
        }
        .clock .marker::after {
          content: "";
          width: 60%;
          height: 60%;
          position: absolute;
          box-shadow: inset 1px 1px 1px var(--greyLight-2), inset -1px -1px 1px var(--white);
          border-radius: 50%;
          top: 20%;
          left: 20%;
          filter: blur(1px);
        }
        .clock .marker__1, .clock .marker__2, .clock .marker__3, .clock .marker__4 {
          position: absolute;
          border-radius: 0.1rem;
          box-shadow: inset 1px 1px 1px var(--greyLight-2), inset -1px -1px 1px var(--white);
        }
        .clock .marker__1, .clock .marker__2 {
          width: 0.2rem;
          height: 0.6rem;
          left: 5.6rem;
        }
        .clock .marker__3, .clock .marker__4 {
          width: 0.6rem;
          height: 0.2rem;
          top: 5.6rem;
        }
        .clock .marker__1 {
          top: 2%;
        }
        .clock .marker__2 {
          top: 98%;
          transform: translateY(-0.6rem);
        }
        .clock .marker__3 {
          left: 2%;
        }
        .clock .marker__4 {
          left: 98%;
          transform: translateX(-0.6rem);
        }
        
        /*  CHIP  */
        .chip {
          grid-column: 2/3;
          grid-row: 3/4;
          justify-self: center;
          width: 17rem;
          height: 4rem;
          border-radius: 1rem;
          box-shadow: 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
          display: flex;
          justify-content: space-between;
          align-items: center;
        }
        .chip__icon {
          width: 3rem;
          height: 3rem;
          border-radius: 1rem;
          margin: 0 0 0 0.2rem;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 1.8rem;
          color: var(--primary);
        }
        .chip p {
          font-size: 0.9rem;
          margin-left: -1.8rem;
          color: var(--greyDark);
        }
        .chip__close {
          width: 1.6rem;
          height: 1.6rem;
          margin: 0 0.5rem;
          display: flex;
          font-size: 1.6rem;
          color: var(--greyLight-3);
          cursor: pointer;
        }
        
        /*  PLAY BUTTON  */
        .circle {
          grid-column: 2/3;
          grid-row: 4/6;
          width: 9rem;
          height: 100%;
          justify-self: center;
          border-radius: 1rem;
          display: grid;
          grid-template-rows: 1fr;
          justify-items: center;
          align-items: center;
        }
        .circle__btn {
          grid-row: 1/2;
          grid-column: 1/2;
          width: 6rem;
          height: 6rem;
          display: flex;
          margin: 0.6rem;
          justify-content: center;
          align-items: center;
          border-radius: 50%;
          font-size: 3.2rem;
          color: var(--primary);
          z-index: 300;
          background: var(--greyLight-1);
          box-shadow: 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
          cursor: pointer;
          position: relative;
        }
        .circle__btn.shadow {
          box-shadow: inset 0.2rem 0.2rem 0.5rem var(--greyLight-2), inset -0.2rem -0.2rem 0.5rem var(--white);
        }
        .circle__btn .play {
          position: absolute;
          opacity: 0;
          transition: all 0.2s linear;
        }
        .circle__btn .play.visibility {
          opacity: 1;
        }
        .circle__btn .pause {
          position: absolute;
          transition: all 0.2s linear;
        }
        .circle__btn .pause.visibility {
          opacity: 0;
        }
        .circle__back-1, .circle__back-2 {
          grid-row: 1/2;
          grid-column: 1/2;
          width: 6rem;
          height: 6rem;
          border-radius: 50%;
          filter: blur(1px);
          z-index: 100;
        }
        .circle__back-1 {
          box-shadow: 0.4rem 0.4rem 0.8rem var(--greyLight-2), -0.4rem -0.4rem 0.8rem var(--white);
          background: linear-gradient(to bottom right, var(--greyLight-2) 0%, var(--white) 100%);
          -webkit-animation: waves 4s linear infinite;
                  animation: waves 4s linear infinite;
        }
        .circle__back-1.paused {
          -webkit-animation-play-state: paused;
                  animation-play-state: paused;
        }
        .circle__back-2 {
          box-shadow: 0.4rem 0.4rem 0.8rem var(--greyLight-2), -0.4rem -0.4rem 0.8rem var(--white);
          -webkit-animation: waves 4s linear 2s infinite;
                  animation: waves 4s linear 2s infinite;
        }
        .circle__back-2.paused {
          -webkit-animation-play-state: paused;
                  animation-play-state: paused;
        }
        
        /*  FORM  */
        .form {
          grid-column: 3/4;
          grid-row: 3/4;
        }
        .form__input {
          width: 20.4rem;
          height: 4rem;
          border: none;
          border-radius: 1rem;
          font-size: 1.4rem;
          padding-left: 1.4rem;
          box-shadow: inset 0.2rem 0.2rem 0.5rem var(--greyLight-2), inset -0.2rem -0.2rem 0.5rem var(--white);
          background: none;
          font-family: inherit;
          color: var(--greyDark);
        }
        .form__input::-moz-placeholder {
          color: var(--greyLight-3);
        }
        .form__input:-ms-input-placeholder {
          color: var(--greyLight-3);
        }
        .form__input::placeholder {
          color: var(--greyLight-3);
        }
        .form__input:focus {
          outline: none;
          box-shadow: 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
        }
        
        /*  SEARCH  */
        .search {
          grid-column: 3/4;
          grid-row: 2/3;
          position: relative;
          display: flex;
          align-items: center;
        }
        .search__input {
          width: 20.4rem;
          height: 4rem;
          border: none;
          border-radius: 1rem;
          font-size: 1.4rem;
          padding-left: 3.8rem;
          box-shadow: inset 0.2rem 0.2rem 0.5rem var(--greyLight-2), inset -0.2rem -0.2rem 0.5rem var(--white);
          background: none;
          font-family: inherit;
          color: var(--greyDark);
        }
        .search__input::-moz-placeholder {
          color: var(--greyLight-3);
        }
        .search__input:-ms-input-placeholder {
          color: var(--greyLight-3);
        }
        .search__input::placeholder {
          color: var(--greyLight-3);
        }
        .search__input:focus {
          outline: none;
          box-shadow: 0.3rem 0.3rem 0.6rem var(--greyLight-2), -0.2rem -0.2rem 0.5rem var(--white);
        }
        .search__input:focus + .search__icon {
          color: var(--primary);
        }
        .search__icon {
          height: 2rem;
          position: absolute;
          font-size: .........完整代码请登录后点击上方下载按钮下载查看

网友评论0