Understanding offsetWidth, clientWidth, scrollWidth and -Height, respectively

The CSS box model is rather complicated, particularly when it comes to scrolling content. While the browser uses the values from your CSS to draw boxes, determining all the dimensions using JS is not straight-forward if you only have the CSS. That’s why each element has six DOM properties for your convenience: offsetWidth, offsetHeight, clientWidth, … Read more

Add border-bottom to table row

Add border-collapse:collapse to your table rule: table { border-collapse: collapse; } Example table { border-collapse: collapse; } tr { border-bottom: 1pt solid black; } <table> <tr><td>A1</td><td>B1</td><td>C1</td></tr> <tr><td>A2</td><td>B2</td><td>C2</td></tr> <tr><td>A2</td><td>B2</td><td>C2</td></tr> </table> Link

How can I expand floated child div’s height to parent’s height?

For the parent element, add the following properties: .parent { overflow: hidden; position: relative; width: 100%; } then for .child-right these: .child-right { background:green; height: 100%; width: 50%; position: absolute; right: 0; top: 0; } Find more detailed results with CSS examples here and more information about equal height columns here.

How to force a line break in a long word in a DIV?

Use word-wrap:break-word; It even works in IE6, which is a pleasant surprise. word-wrap: break-word has been replaced with overflow-wrap: break-word; which works in every modern browser. IE, being a dead browser, will forever rely on the deprecated and non-standard word-wrap instead. Existing uses of word-wrap today still work as it is an alias for overflow-wrap … Read more

How to center an element horizontally and vertically

Approach 1 – transform translateX/translateY: Example Here / Full Screen Example In supported browsers (most of them), you can use top: 50%/left: 50% in combination with translateX(-50%) translateY(-50%) to dynamically vertically/horizontally center the element. .container { position: absolute; top: 50%; left: 50%; -moz-transform: translateX(-50%) translateY(-50%); -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); } <div class=”container”> <span>I’m … Read more

What’s the difference between disabled=”disabled” and readonly=”readonly” for HTML form input fields?

A readonly element is just not editable, but gets sent when the according form submits. A disabled element isn’t editable and isn’t sent on submit. Another difference is that readonly elements can be focused (and getting focused when “tabbing” through a form) while disabled elements can’t. Read more about this in this great article or … Read more