UNPKG

element-ui

Version:

A Component Library for Vue.js.

267 lines (232 loc) 5.63 kB
@import "./common/var.css"; @component-namespace el-color { @component hue-slider { position: relative; box-sizing: border-box; width: 280px; height: 12px; background-color: #f00; padding: 0 2px; @descendent bar { position: relative; background: linear-gradient( to right, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%); height: 100%; } @descendent thumb { position: absolute; cursor: pointer; box-sizing: border-box; left: 0; top: 0; width: 4px; height: 100%; border-radius: 1px; background: #fff; border: 1px solid #f0f0f0; box-shadow: 0 0 2px rgba(0, 0, 0, 0.6); z-index: 1; } @when vertical { width: 12px; height: 180px; padding: 2px 0; .el-color-hue-slider__bar { background: linear-gradient( to bottom, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%); } .el-color-hue-slider__thumb { left: 0; top: 0; width: 100%; height: 4px; } } } @component svpanel { position: relative; width: 280px; height: 180px; @descendent white, black { position: absolute; top: 0; left: 0; right: 0; bottom: 0; } @descendent white { background: linear-gradient(to right, #fff, rgba(255,255,255,0)); } @descendent black { background: linear-gradient(to top, #000, rgba(0,0,0,0)); } @descendent cursor { position: absolute; > div { cursor: head; width: 4px; height: 4px; box-shadow: 0 0 0 1.5px #fff, inset 0 0 1px 1px rgba(0,0,0,0.3), 0 0 1px 2px rgba(0,0,0,0.4); border-radius: 50%; transform: translate(-2px, -2px); } } } @component alpha-slider { position: relative; box-sizing: border-box; width: 280px; height: 12px; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==); @descendent bar { position: relative; background: linear-gradient( to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%); height: 100%; } @descendent thumb { position: absolute; cursor: pointer; box-sizing: border-box; left: 0; top: 0; width: 4px; height: 100%; border-radius: 1px; background: #fff; border: 1px solid #f0f0f0; box-shadow: 0 0 2px rgba(0, 0, 0, 0.6); z-index: 1; } @when vertical { width: 20px; height: 180px; .el-color-alpha-slider__bar { background: linear-gradient( to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%); } .el-color-alpha-slider__thumb { left: 0; top: 0; width: 100%; height: 4px; } } } @component dropdown { width: 300px; @descendent main-wrapper { margin-bottom: 6px; &::after { content: ""; display: table; clear: both; } } @descendent btns { margin-top: 6px; text-align: right; } @descendent value { float: left; line-height: 26px; font-size: 12px; color: var(--color-base-black); } @descendent btn { border: 1px solid #dcdcdc; color: #333; line-height: 24px; border-radius: 2px; padding: 0 20px; cursor: pointer; background-color: transparent; outline: none; font-size: 12px; &[disabled] { color: #cccccc; cursor: not-allowed; } &:hover { color: var(--color-primary); border-color: var(--color-primary); } } @descendent link-btn { cursor: pointer; color: var(--color-primary); text-decoration: none; padding: 15px; font-size: 12px; &:hover { color: tint(var(--color-primary), var(--button-hover-tint-percent)); } } } @component picker { display: inline-block; position: relative; line-height: normal; @descendent trigger { display: inline-block; box-sizing: border-box; height: 36px; padding: 6px; border: 1px solid #bfcbd9; border-radius: 4px; font-size: 0; } @descendent color { position: relative; display: inline-block; box-sizing: border-box; border: 1px solid #666; width: 22px; height: 22px; text-align: center; @when alpha { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==); } } @descendent color-inner { position: absolute; left: 0; top: 0; right: 0; bottom: 0; } @descendent empty { font-size: 12px; vertical-align: middle; color: #666; position: absolute; top: 4px; left: 4px; } @descendent icon { display: inline-block; position: relative; top: -6px; margin-left: 8px; width: 12px; color: #888; font-size: 12px; } @descendent panel { position: absolute; z-index: 10; padding: 6px; background-color: var(--color-white); border: 1px solid var(--color-base-gray); box-shadow: var(--dropdown-menu-box-shadow); } } }