- How to Remove and Style the Border Around Text Input Boxes in Google Chrome
- Example of styling the border around the text input boxes with the :focus and :active pseudo-classes:
- Example of removing input highlighting:
- CSS Forms
- Styling Input Fields
- Example
- Padded Inputs
- Example
- Bordered Inputs
- Example
- Example
- Colored Inputs
- Example
- Focused Inputs
- Example
- Example
- Input with icon/image
- Example
- Animated Search Input
- Example
- Styling Textareas
- Example
- Styling Select Menus
- Example
- Styling Input Buttons
- Example
- Responsive Form
- Aligned Form
- How to create a colored border around text with HTML and CSS
- Border CSS
- Add a border using the style attribute
- Add a border using a CSS class
- Related information
How to Remove and Style the Border Around Text Input Boxes in Google Chrome
So, in the example above, it is much more difficult for the user to fill the form when they don’t clearly see which input field is active at the moment.
That’s why it is recommended to remove the default outline and add your preferred style to the box to indicate that it is active when clicking on it.
Remove the outline and add a border style using the :focus and :active pseudo-classes with the field. Also, you can remove the default borders on certain sides by setting them to «transparent».
Example of styling the border around the text input boxes with the :focus and :active pseudo-classes:
html> html> head> title>Title of the document title> style> input < padding: 5px; margin: 5px 0; outline: none; > input:focus, input:active < border-color: transparent; border-bottom: 2px solid #1c87c9; > style> head> body> form> label for="myOutline">Click the input below to see how the styled outline appears. label> br> input type="text" id="myOutline" placeholder="Enter Something" /> form> body> html>
See another example where the outline: none; is set for , and fields.
Example of removing input highlighting:
html> html> head> title>Title of the document title> style> input, textarea < padding: 5px; > span < display: block; padding: 15px 0 3px; > input:focus, textarea:focus, select:focus < outline: none; > style> head> body> h3>Removed Input Highlighting for input, textarea and select form fields h3> form> span>An input field: span> input type="text"> span>A textarea field: span> textarea> textarea> span>A select field: span> select> option>Select option> option>Select option> select> form> body> html>
Note that the «outline» property is important for accessibility because it indicates to users who navigate using the keyboard where the focus is. If you remove it completely, it may make your website less accessible. If you do decide to style the outline, make sure it is still visible and meets accessibility guidelines.
CSS Forms
The look of an HTML form can be greatly improved with CSS:
Styling Input Fields
Use the width property to determine the width of the input field:
Example
The example above applies to all elements. If you only want to style a specific input type, you can use attribute selectors:
- input[type=text] — will only select text fields
- input[type=password] — will only select password fields
- input[type=number] — will only select number fields
- etc..
Padded Inputs
Use the padding property to add space inside the text field.
Tip: When you have many inputs after each other, you might also want to add some margin , to add more space outside of them:
Example
Note that we have set the box-sizing property to border-box . This makes sure that the padding and eventually borders are included in the total width and height of the elements.
Read more about the box-sizing property in our CSS Box Sizing chapter.
Bordered Inputs
Use the border property to change the border size and color, and use the border-radius property to add rounded corners:
Example
If you only want a bottom border, use the border-bottom property:
Example
Colored Inputs
Use the background-color property to add a background color to the input, and the color property to change the text color:
Example
Focused Inputs
By default, some browsers will add a blue outline around the input when it gets focus (clicked on). You can remove this behavior by adding outline: none; to the input.
Use the :focus selector to do something with the input field when it gets focus:
Example
Example
Input with icon/image
If you want an icon inside the input, use the background-image property and position it with the background-position property. Also notice that we add a large left padding to reserve the space of the icon:
Example
input[type=text] <
background-color: white;
background-image: url(‘searchicon.png’);
background-position: 10px 10px;
background-repeat: no-repeat;
padding-left: 40px;
>
Animated Search Input
In this example we use the CSS transition property to animate the width of the search input when it gets focus. You will learn more about the transition property later, in our CSS Transitions chapter.
Example
input[type=text] <
transition: width 0.4s ease-in-out;
>
input[type=text]:focus width: 100%;
>
Styling Textareas
Tip: Use the resize property to prevent textareas from being resized (disable the «grabber» in the bottom right corner):
Example
textarea <
width: 100%;
height: 150px;
padding: 12px 20px;
box-sizing: border-box;
border: 2px solid #ccc;
border-radius: 4px;
background-color: #f8f8f8;
resize: none;
>
Styling Select Menus
Example
select <
width: 100%;
padding: 16px 20px;
border: none;
border-radius: 4px;
background-color: #f1f1f1;
>
Styling Input Buttons
Example
input[type=button], input[type=submit], input[type=reset] <
background-color: #04AA6D;
border: none;
color: white;
padding: 16px 32px;
text-decoration: none;
margin: 4px 2px;
cursor: pointer;
>
/* Tip: use width: 100% for full-width buttons */
For more information about how to style buttons with CSS, read our CSS Buttons Tutorial.
Responsive Form
Resize the browser window to see the effect. When the screen is less than 600px wide, make the two columns stack on top of each other instead of next to each other.
Advanced: The following example uses media queries to create a responsive form. You will learn more about this in a later chapter.
Aligned Form
An example of how to style labels together with inputs to create a horizontal aligned form:
How to create a colored border around text with HTML and CSS
Using borders, you can add a box around text, and set or change the border to nearly any color. A border in your HTML (hypertext markup language) page helps bring attention to a section of text or surround any other HTML elements. Borders are added to HTML using CSS (cascading style sheets).
Border CSS
Border CSS has properties for line type (solid, dotted, etc.), line width, and line color. The following table elaborates on the details of each and which values are acceptable to make them work properly.
CSS Border Property | Valid Values | Example |
---|---|---|
border (all sides) border-top (top line only) border-right (right line only) border-bottom (bottom line only) border-left (left line only) | Any valid combination of the properties below. | dotted thin black |
border-style (all sides) | solid dotted dashed double groove ridge inset outset none hidden | solid |
border-width (all sides) | width, specified in px, pt, cm, em width, specified as thin, medium, or thick | 3 px |
border-color (all sides) | color, specified as color code color, specified as named color | #FF00FF |
Add a border using the style attribute
HTML tags can be formatted using a style attribute. To add a border using the style attribute, add the border CSS inside the quotes after style=.
In the example below, we surrounded a paragraph ( ) with a solid red border that is 3 pixels wide.
First example with text surrounded by a red border.
This example also has multiple lines.
To create the example above, the code below is used.
<p style="border-width:3px; border-style:solid; border-color:#FF0000; padding: 1em;">First example with text surrounded by a red border.
This example also has multiple lines.p>
In the code above, the CSS is defining the border size («px» short for pixel), style type, and border color. The style of the border is how the border appears on the screen. In our example, we used the «solid» border style. The border color defines the color you want to use for the border. In the example above, the color code #FF0000 is used, which is the color code for red.
A border can also be applied to only one side. For example, with the heading of this page, we have a grey underline. This line is actually a border, achieved with the CSS code border-bottom: 1px solid #93B0D2;.
Placing the CSS formatting inside the style attribute can be applied to other HTML tags, such as the div tag or span tag. In the example below, a border is added to a single word using the span tag.
Here is a second example with a bordered word , with different styles applied to the top, bottom, left, and right.
To create the example above, the following code is used.
<span style="border-top:thick green solid;border-bottom:thick green double;border-left:4px #2330C4 dotted; border-right:thin #2330C4 dotted;padding-left:2px;padding-right:2px;">wordspan>
Add a border using a CSS class
The appearance of elements on a web page may also be defined with inline CSS. Inline CSS is defined in your HTML document, in the element. Or, you can define the CSS in an external file with the .css extension. Then, you can link to this file from any HTML page, and elements in that document can use the CSS styles. For example, with the CSS code below, a new class named «borderexample» is created that can be applied to any HTML tag.
Using the code above, if you want to apply this border style to an HTML paragraph or word, you can type something similar to the example below.
<p class="borderexample">Here is an example of a border created using CSS.p> <p>The class can also be <span class="borderexample">usedspan> on the span tag.p>
On your web page, the code above would look like the example below.
Here is an example of a border created using CSS.
The class can also be used on the span tag.