CSS/HTML: Create a glowing border around an Input Field

后端 未结 11 2360
野的像风
野的像风 2020-12-02 03:39

I want to create some decent inputs for my form, and I would really like to know how TWITTER does their glowing border around their inputs.

Example/Picture of the Tw

相关标签:
11条回答
  • 2020-12-02 04:12

    This will create glowing input fields and textareas:

    textarea,textarea:focus,input,input:focus{
        transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
        border: 1px solid #c4c4c4;
        border-radius: 4px;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        box-shadow: 0px 0px 8px #d9d9d9;
        -moz-box-shadow: 0px 0px 8px #d9d9d9;
        -webkit-box-shadow: 0px 0px 8px #d9d9d9;
    }
    
    input:focus,textarea:focus { 
        outline: none;
        border: 1px solid #7bc1f7;
        box-shadow: 0px 0px 8px #7bc1f7;
        -moz-box-shadow: 0px 0px 8px #7bc1f7;
        -webkit-box-shadow: 0px 0px 8px #7bc1f7;
    }
    
    0 讨论(0)
  • 2020-12-02 04:14

    Modified version with little less glowing version.

    input {
        /* round the corners */
        //background-color: transparent;
        border: 1px solid;
        height: 20px;
        width: 160px;
        color: #CCC;
        border-radius: 4px;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;    
    }
    
    input:focus { 
        outline:none;
        border: 1px solid #4195fc; 
        /* create a BIG glow */
        box-shadow: 0px 0px 5px #4195fc; 
        -moz-box-shadow: 0px 0px 5px #4195fc;
        -webkit-box-shadow: 0px 0px 5px #4195fc;  
    }
    
    0 讨论(0)
  • 2020-12-02 04:17

    Use a normal blue border, a medium border-radius, and a blue box-shadow with position 0 0.

    0 讨论(0)
  • 2020-12-02 04:24

    I combined two of the previous answers (jsfiddle).

    input {
        /* round the corners */
        border-radius: 4px;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;    
    }
    
    input:focus { 
        outline:none;
        border: 1px solid #4195fc; 
        /* create a BIG glow */
        box-shadow: 0px 0px 14px #4195fc; 
        -moz-box-shadow: 0px 0px 14px #4195fc;
        -webkit-box-shadow: 0px 0px 14px #4195fc;  
    }​
    
    0 讨论(0)
  • 2020-12-02 04:25

    $('.form-fild input,.form-fild textarea').focus(function() {
        $(this).parent().addClass('open');
    });
    
    $('.form-fild input,.form-fild textarea').blur(function() {
        $(this).parent().removeClass('open');
    });
    .open {
      color:red;   
    }
    .form-fild {
    	position: relative;
    	margin: 30px 0;
    }
    .form-fild label {
    	position: absolute;
    	top: 5px;
    	left: 10px;
    	padding:5px;
    }
    
    .form-fild.open label {
    	top: -25px;
    	left: 10px;
    	/*background: #ffffff;*/
    }
    .form-fild input[type="text"] {
    	padding-left: 80px;
    }
    .form-fild textarea {
    	padding-left: 80px;
    }
    .form-fild.open textarea, 
    .form-fild.open input[type="text"] {
    	padding-left: 10px;
    }
    textarea,
    input[type="text"] {
    	padding: 10px;
    	width: 100%;
    }
    textarea,
    input,
    .form-fild.open label,
    .form-fild label {
    	-webkit-transition: all 0.2s ease-in-out;
           -moz-transition: all 0.2s ease-in-out;
             -o-transition: all 0.2s ease-in-out;
                transition: all 0.2s ease-in-out;
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div class="container">
    	<div class="row">
        	<form>
            <div class="form-fild">
                <label>Name :</label>
                <input type="text">
            </div>
            <div class="form-fild">
                <label>Email :</label>
                <input type="text">
            </div>
            <div class="form-fild">
                <label>Number :</label>
                <input type="text">
            </div>
            <div class="form-fild">
                <label>Message :</label>
                <textarea cols="10" rows="5"></textarea>
            </div>
        </form>
        </div>
    </div>

    0 讨论(0)
  • 2020-12-02 04:31

    Below is the code that Bootstrap uses. Colors are bit different but the concept is same. This is if you are using LESS to compile CSS:

    // Form control focus state
    //
    // Generate a customized focus state and for any input with the specified color,
    // which defaults to the `@input-focus-border` variable.
    //
    // We highly encourage you to not customize the default value, but instead use
    // this to tweak colors on an as-needed basis. This aesthetic change is based on
    // WebKit's default styles, but applicable to a wider range of browsers. Its
    // usability and accessibility should be taken into account with any change.
    //
    // Example usage: change the default blue border and shadow to white for better
    // contrast against a dark gray background.
    
    .form-control-focus(@color: @input-border-focus) {
      @color-rgba: rgba(red(@color), green(@color), blue(@color), .6);
      &:focus {
        border-color: @color;
        outline: 0;
        .box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}");
      }
    }
    

    If you are not using LESS then here's the compiled version:

    .form-control:focus {
        border-color: #66afe9;
        outline: 0;
        -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
        box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
    }
    
    0 讨论(0)
提交回复
热议问题