web常用UI组件
Posted 不靠谱的作曲家
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web常用UI组件相关的知识,希望对你有一定的参考价值。
目录
内容
**按钮**<button type="button" class="ub-button ub-button--default">
默认按钮
</button>
<button type="button" class="ub-button ub-button--primary">
主要按钮
</button>
<button type="button" class="ub-button ub-button--success">
成功按钮
</button>
<button type="button" class="ub-button ub-button--info">
信息按钮
</button>
<button type="button" class="ub-button ub-button--warning">
警告按钮
</button>
<button type="button" class="ub-button ub-button--danger">
危险按钮
</button>
/* 按钮公共样式 */
.ub-button
display: inline-block;
line-height: 1;
white-space: nowrap;
cursor: pointer;
background: #fff;
border: 1px solid #dcdfe6;
color: #606266;
-webkit-appearance: none;
text-align: center;
box-sizing: border-box;
outline: none;
margin: 0;
transition: .1s;
font-weight: 500;
-moz-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
padding: 12px 20px;
font-size: 14px;
border-radius: 4px;
.ub-button:focus,
.ub-button:hover
color: #409eff;
border-color: #c6e2ff;
background-color: #ecf5ff;
/* 主要按钮 */
.ub-button--primary
color: #fff;
background-color: #409eff;
border-color: #409eff;
.ub-button--primary:focus,
.ub-button--primary:hover
background: #66b1ff;
border-color: #66b1ff;
color: #fff;
/* 成功按钮 */
.ub-button--success
color: #fff;
background-color: #67c23a;
border-color: #67c23a;
.ub-button--success:focus,
.ub-button--success:hover
background: #85ce61;
border-color: #85ce61;
color: #fff;
/* 信息按钮 */
.ub-button--info
color: #fff;
background-color: #909399;
border-color: #909399;
.ub-button--info:focus,
.ub-button--info:hover
background: #a6a9ad;
border-color: #a6a9ad;
color: #fff;
/* 警告按钮 */
.ub-button--warning
color: #fff;
background-color: #e6a23c;
border-color: #e6a23c;
.ub-button--warning:focus,
.ub-button--warning:hover
background: #ebb563;
border-color: #ebb563;
color: #fff;
/* 危险按钮 */
.ub-button--danger
color: #fff;
background-color: #f56c6c;
border-color: #f56c6c;
.ub-button--danger:focus,
.ub-button--danger:hover
background: #f78989;
border-color: #f78989;
color: #fff;
**标签**
<span class="ub-tag ub-tag--light">标签一</span>
<span class="ub-tag ub-tag--success">标签二</span>
<span class="ub-tag ub-tag--info">标签三</span>
<span class="ub-tag ub-tag--warning">标签四</span>
<span class="ub-tag ub-tag--danger">标签五</span>
.ub-tag
background-color: #ecf5ff;
display: inline-block;
height: 32px;
padding: 0 10px;
line-height: 30px;
font-size: 12px;
color: #409eff;
border: 1 px solid #d9ecff;
border-radius: 4px;
box-sizing: border-box;
white-space: nowrap;
/* 标签二 */
.ub-tag.ub-tag--success
background-color: #f0f9eb;
border-color: #e1f3d8;
color: #67c23a;
/* 标签三 */
.ub-tag.ub-tag--info
background-color: #f4f4f5;
border-color: #e9e9eb;
color: #909399;
/* 标签四 */
.ub-tag.ub-tag--warning
background-color: #fdf6ec;
border-color: #faecd8;
color: #e6a23c;
/* 标签五 */
.ub-tag.ub-tag--danger
background-color: #fef0f0;
border-color: #fde2e2;
color: #f56c6c;
**单选框**
<span class="ub-radio">
<inputtype="radio" value="" name="name" id="1">
<label for="1"></label>
<label for="1">选项一</label>
</span>
<span class="ub-radio">
<input type="radio" value="" name="name" id="2">
<label for="2"></label>
<label for="2">选项一</label>
</span>
.ub-radio label
margin-right: 16px;
cursor: pointer;
input[type="radio"]
display: none;
input[type="radio"]+label
position: relative;
display: inline-block;
width: 20px;
height: 20px;
border: 1px solid #D1D1D1;
vertical-align: bottom;
border-radius: 50%;
margin-right: 2px;
box-sizing: border-box;
cursor: pointer;
input[type=radio]:checked+label
background-color: #409EFF;
border: 1px solid #409EFF;
input[type="radio"]+label:before
position: absolute;
content: "";
width: 10px;
height: 5px;
border: 2px solid #fff;
border-top: none;
border-right: none;
transform: rotate(-45deg);
top: 4px;
left: 3px;
display: none;
input[type="radio"]:checked+label::before
display: block;
**多选框**
<span class="ub-checkbox">
<input type="checkbox" value="" name="name" id="1">
<label for="1"></label>
<label for="1">选项一</label>
</span>
<span class="ub-checkbox">
<input type="checkbox" value="" name="name" id="2">
<label for="2"></label>
<label for="2">选项一</label>
</span>
.ub-checkbox label
margin-right: 16px;
cursor: pointer;
input[type="checkbox"]
display: none;
input[type="checkbox"]+label
position: relative;
display: inline-block;
width: 20px;
height: 20px;
border: 1px solid #D1D1D1;
vertical-align: bottom;
border-radius: 4px;
margin-right: 2px;
-webkit-box-sizing: border-box;
cursor: pointer;
input[type=checkbox]:checked+label
background-color: #409EFF;
border: 1px solid #409EFF;
input[type="checkbox"]+label:before
position: absolute;
content: "";
width: 10px;
height: 5px;
border: 2px solid #fff;
border-top: none;
border-right: none;
transform: rotate(-45deg);
top: 4px;
left: 3px;
display: none;
input[type="checkbox"]:checked+label::before
display: block;
**加载中**
<div class="ub-loading-box">
<div class="ub-loading">
<img src="images/loading.png" class="ub-rotate">
<p>拼命加载中</p>
</div>
</div>
.ub-loading-box
width: 100%;
height: 100%;
position: absolute;
text-align: center;
.ub-loading
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
.ub-loading p
color: #409EFF;
.ub-loading .ub-rotate
animation: rotate 2s infinite linear;
-webkit-animation: rotate 2s infinite linear;
@keyframes rotate
from
transform: rotate(0deg);
to
transform: rotate(360deg);
**开关**
<input class="ub-switch" type="checkbox">
.ub-switch
width: 58px;
height: 28px;
position: relative;
border: 1px solid #dfdfdf;
background-color: #fdfdfd;
box-shadow: #dfdfdf 0 0 0 0 inset;
border-radius: 20px;
background-clip: content-box;
display: inline-block;
-webkit-appearance: none;
user-select: none;
outline: none;
margin-right: 18px;
cursor: pointer;
.ub-switch:before
content: '';
width: 25px;
height: 25px;
position: absolute;
top: 0;
left: 0;
border-radius: 20px;
background-color: #fff;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
transition: left 0.3s;
.ub-switch:checked
border-color: #409eff;
box-shadow: #409eff 0 0 0 16px inset;
background-color: #409eff;
.ub-switch:checked:before
left: 32px;
transition: left 0.3s;
**面包屑**
<p class="ub-breadcrumbs">
<a href="#">首页</a> / <a href="#">详情</a> / <span>文章</span>
</p>
<p class="ub-breadcrumbs">
<a href="#">首页</a> - <a href="#">详情</a> - <span>文章</span>
</p>
<p class="ub-breadcrumbs">
<a href="#">首页</a> > <a href="#">详情</a> > <span>文章</span>
</p>
.ub-breadcrumbs
color: #8c8c8c;
font-size: 14px;
.ub-breadcrumbs a
color: #8c8c8c;
text-decoration: none;
.ub-breadcrumbs span
font-weight: 600;
color: #333;
**输入框**
<input type="text" placeholder="请输入内容" class="ub-input">
.ub-input
width: 20%;
background-color: #fff;
background-image: none;
border-radius: 4px;
border: 1px solid #dcdfe6;
box-sizing: border-box;
color: #606266;
display: inline-block;
font-size: inherit;
height: 40px;
line-height: 40px;
outline: none;
padding: 0 8px;
transition: border-color .2s cubic-bezier(.645, .045, .355, 1);
**下拉框**
<select name="" class="ub-select">
<option value="">请选择</option>
<option value="">选择一</option>
<option value="">选择二</option>
<option value="">选择三</option>
<option value="">选择四</option>
</select>
.ub-select
width:30%;
background-color: #fff;
background-image: none;
border-radius: 4px;
border: 1px solid #dcdfe6;
box-sizing: border-box;
color: #606266;
display: inline-block;
font-size: inherit;
height: 40px;
line-height: 40px;
outline: none;
padding: 0 8px;
transition: border-color .2s cubic-bezier(.645, .045, .355, 1);
cursor: pointer;
**表单**
<div class="ub-form-item">
<label class="ub-form-item__label">活动名称</label>
<input type="text" class="ub-input">
</div>
<div class="ub-form-item">
<label class="ub-form-item__label">活动选择</label>
<select name="" class="ub-select">
<option value="">请选择</option>
<option value="">选择一</option>
<option value="">选择二</option>
<option value="">选择三</option>
<option value="">选择四</option>
</select>
</div>
.ub-form-item
display: flex;
align-items: center;
margin-bottom: 12px;
.ub-form-item__label
width: 80px;
text-align: right;
vertical-align: middle;
float: left;
font-size: 14px;
color: #606266;
line-height: 40px;
padding: 0 12px 0 0;
box-sizing: border-box;
.ub-input
width: 20%;
-webkit-appearance: none;
background-color: #fff;
background-image: none;
border-radius: 4px;
border: 1px solid #dcdfe6;
box-sizing: border-box;
color: #606266;
display: inline-block;
font-size: inherit;
height: 40px;
line-height: 40px;
outline: none;
padding: 0 15px;
transition: border-color .2s cubic-bezier(.645, .045, .355, 1);
cursor: pointer;
.ub-select
width: 20%;
background-color: #fff;
background-image: none;
border-radius: 4px;
border: 1px solid #dcdfe6;
box-sizing: border-box;
color: #606266;
display: inline-block;
font-size: inherit;
height: 40px;
line-height: 40px;
outline: none;
padding: 0 15px;
transition: border-color .2s cubic-bezier(.645, .045, .355, 1);
cursor: pointer;
**文字链接**
<a href="#" target="_blank" class="ub-link ub-link--default is-underline">
默认链接
</a>
<a href="#" target="_blank" class="ub-link ub-link--primary is-underline">
主要链接
</a>
<a href="#" target="_blank" class="ub-link ub-link--success is-underline">
成功链接
</a>
<a href="#" target="_blank" class="ub-link ub-link--warning is-underline">
警告链接
</a>
<a href="#" target="_blank" class="ub-link ub-link--danger is-underline">
危险链接
</a>
<a href="#" target="_blank" class="ub-link ub-link--info is-underline">
信息链接
</a>
/* 公共样式 */
.ub-link
display: inline-flex;
flex-direction: row;
align-items: center;
justify-content: center;
vertical-align: middle;
position: relative;
text-decoration: none;
outline: none;
cursor: pointer;
padding: 0;
font-size: 14px;
font-weight: 500;
/* 默认链接 */
.ub-link.ub-link--default
color: #606266;
.ub-link.ub-link--default:hover
color: #409eff;
/* 主要链接 */
.ub-link.ub-link--primary
color: #409eff;
/* 成功链接 */
.ub-link.ub-link--success
color: #67c23a;
/* 警告链接 */
.ub-link.ub-link--warning
color: #e6a23c;
/* 危险链接 */
.ub-link.ub-link--danger
color: #f56c6c;
/* 信息链接 */
.ub-link.ub-link--info
color: #909399;
**弹窗**
<div class="ub-mask"></div>
<div class="ub-message-box">
<p class="ub-message-title">标题名称<i><img src="images/close.png" class="ub-message-close"></i></p>
<div class="ub-message-content">
<p>这是一段内容这是一段内容这是一段内容这是一段内容这是一段内容这是一段内容这是一段内容这是一段内容这是一段内容</p>
</div>
<div class="ub-message-btn">
<button type="button" class="ub-button ub-button--default">
确定
</button>
<button type="button" class="ub-button ub-button--primary">
确定
</button>
</div>
</div>
.ub-mask
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.5);
position: absolute;
top: 0;
left: 0;
.ub-message-box
width: 20%;
padding: 15px;
border-radius: 4px;
background: #fff;
position: absolute;
top: 40%;
left: 50%;
transform: translate(-50%, -50%);
box-shadow: 0 2px 12px 0 rgb(0 0 0 / 10%);
.ub-message-title
font-size: 18px;
line-height: 1;
color: #333;
display: flex;
justify-content: space-between;
align-items: center;
.ub-message-close
width: 12px;
cursor: pointer;
.ub-message-content
line-height: 1.5;
padding: 15px 0;
color: #606266;
font-size: 14px;
.ub-message-btn
text-align: right;
.ub-button
display: inline-block;
line-height: 1;
white-space: nowrap;
cursor: pointer;
background: #fff;
border: 1px solid #dcdfe6;
color: #606266;
-webkit-appearance: none;
text-align: center;
box-sizing: border-box;
outline: none;
margin: 0;
transition: .1s;
font-weight: 500;
-moz-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
padding: 12px 20px;
font-size: 14px;
border-radius: 4px;
.ub-button--primary
color: #fff;
background-color: #409eff;
border-color: #409eff;
.ub-button--primary:focus,
.ub-button--primary:hover
background: #66b1ff;<以上是关于web常用UI组件的主要内容,如果未能解决你的问题,请参考以下文章