美文网首页CSS相关技术文章
用css或js美化表单

用css或js美化表单

作者: 愿你如夏日清凉的风 | 来源:发表于2017-10-27 17:55 被阅读147次

前端在做开发的时候,难免会遇到要美化表单的时候,最常见的就是设计稿做的跟默认的样式完全不一样,我们需要通过css或者js来实现设计稿的效果,我个人简称为美化表单。
下面是我工作中的例子,不一定会是美化表单的,但是都跟表单有关系,这里先写些简单的例子,后面遇到了再慢慢补充。

美化radio input type="radio"

下面是直接使用CSS来实现的方式:
html代码:

<div class="radio-panel radio-style">
    <span class="radio-panel-title">封面</span>
    <label>
         <input type="radio" name="cover" value="单图">单图
         <span class="radio-box"></span>
    </label>
    <label>
           <input type="radio" name="cover" value="三图" checked>三图
           <span class="radio-box"></span>
    </label>
    <label>
           <input type="radio" name="cover" value="自动">自动
           <span class="radio-box"></span>
           <a href="javascript:void (0);" class="msg-icon"></a>
           <span class="msg-content" style="display: none;">系统会从正文中随机挑选图片作为封面图进行展示</span>
  </label>
</div>

sass代码

.radio-style {
    label {
      position: relative;
      display: inline-block;
      cursor: pointer;
      .radio-box {
        position: absolute;
        left: -2px;
        top: -2px;
        display: block;
        width: 20px;
        height: 20px;
        border-radius: 55%;
        background: $white;
        border: 1px solid #b1b1b1;
      }
      input[type="radio"]:checked + .radio-box {
        width: 20px;
        height: 20px;
        background: $white url("./../img/checked.png") no-repeat top center;
        background-size: 100% 100%;
        border: 0;
      }

      .msg-content {
        position: absolute;
        left: 50%;
        top: -49px;
        margin-left: -137px;
        display: block;
        width: 340px;
        height: 28px;
        line-height: 28px;
        text-align: center;
        font-size: 14px;
        border: 1px solid $normalRed;
        background: #f5f5f5;
        border-radius: 3px;
        &:before {
          content: '';
          position: absolute;
          left: 50%;
          bottom: -17px;
          display: block;
          margin-left: -9px;
          width: 17px;
          height: 17px;
          background: url("./../img/triangle-red2.png") no-repeat top center;
        }
      }
    }
  }
  .msg-icon {
    margin-left: 5px;
    margin-top: -4px;
    display: inline-block;
    vertical-align: middle;
    width: 14px;
    height: 14px;
    background: url("./../img/msg-icon.png") no-repeat top center;
  }
  .msg-icon:hover {
    background: url("./../img/msg-icon-red.png") no-repeat top center;
  }

另外,这个例子中还有一个鼠标移上去在图标上方显示提示文字的需求,用了一点js,我这里用的是jQuery来实现的,在下面的代码上面别忘了引入jQuery。具体代码看下面:

    // 发表文章的时候,封面处选择自动的时候显示提示
    $(function () {
        $('.msg-icon').hover(function () {
            $('.msg-content').show();
        }, function () {
            $('.msg-content').hide();
        });
    });

隐藏select下拉列表右边默认的箭头

select {
    -webkit-appearance: none; /* Firefox */
    -moz-appearance: none; /* Safari 和 Chrome */
    appearance: none;
}

修改select文字颜色

    $(function () {
      $("select").change(function () {
        $(this).css("color", "#000");
      })
    });

相关文章

  • 用css或js美化表单

    前端在做开发的时候,难免会遇到要美化表单的时候,最常见的就是设计稿做的跟默认的样式完全不一样,我们需要通过css或...

  • 原生JS表单美化

    1.表单美化—单选框 html结构 css样式 js代码 2.表单美化—复选框 html结构 css样式 js代码...

  • web 2.html CSS

    今日内容: HTML标签:表单标签 CSS:页面美化和布局控制 案例:

  • 8.HTML&CSS

    主要内容: HTML标签:表单标签 CSS:页面美化和布局控制 案例:

  • 前端第一天

    html 展示网页内容css 美化内容js 实现功能

  • 小程序自定义美化swiper组件(自定义指示点,自定义轮播样式

    修改指示点修改轮播样式 1、自定义指示点 js css 美化修改轮播样式 js css

  • 样式化HTML表单

    css美化表单组件的困难 1 .1995年的时候,表单组件在HTML2规范中被添加到HTML,但是由于表单组件的复...

  • css笔记

    CSS初识 CSS(Cascading Style Sheets) 美化样式 CSS通常称为CSS样式表或层...

  • 2018-08-25

    CSS初识 CSS(Cascading Style Sheets) 美化样式 CSS通常称为CSS样式表或层...

  • 样式表的属性 --- CSS脚本化

    JS主要工作,在以前主要是在前端美化一下页面。然后加一些特效JS去操作CSS属性工作,去添加动画因为有了JS 用起...

网友评论

    本文标题:用css或js美化表单

    本文链接:https://www.haomeiwen.com/subject/ffddpxtx.html