Overview and differences between html inline elements and html block-level elements

Overview and differences between html inline elements and html block-level elements
Block-level element features :
•Always occupies a line by itself, starting from a new line, and the elements that follow must also be displayed on a new line;
•Width, height, padding and margin can all be controlled;

Inline element properties :
• On the same line as adjacent inline elements;
• The width (width), height (height), top/bottom of the inner margin (padding-top/padding-bottom) and top/bottom of the outer margin (margin-top/margin-bottom) cannot be changed, that is, the size of the text or picture inside;

The main block-level elements are :

Copy code
The code is as follows:

address , blockquote , center , dir , div , dl , fieldset , form , h1 , h2 , h3 , h4 , h5 , h6 , hr , isindex , menu , noframes , noscript , ol , p , pre , table , ul

The main inline elements are :

Copy code
The code is as follows:

a , abbr , acronym , b , bdo , big , br , cite , code , dfn , em , font , i , img , input , kbd , label , q , s , samp , select , small , span , strike , strong , sub , sup ,
textarea , tt , u , var

Variable elements (determine whether the element is a block element or an inline element based on the context) :

Copy code
The code is as follows:

applet ,button ,del ,iframe , ins ,map ,object , script

Application of block-level and inline elements in CSS :
By using CSS, we can get rid of the restrictions of HTML tag classification in the table above and freely apply the attributes we need to different tags/elements.

The main CSS styles used are the following three :
•display:block -- Display as a block-level element
•display:inline -- Display as an inline element
• dipslay:inline-block -- Displayed as an inline block element, it is displayed in the same row and can modify properties such as width, height, inner and outer margins. We often add the display:inline-block style to the <ul> element, so that the originally vertical list can be displayed horizontally.

Off topic : I recently sorted out some knowledge about the difference between block-level elements and inline elements. I found a lot of related articles on the Internet and found that everyone's understanding seemed to be wrong. I tested it myself and found a lot of problems :
1. The margin-left / margin-right and padding-left / padding-right of inline elements can be controlled, so the width of inline elements can be controlled by these four properties.
2. Block-level element tags can also be placed inside inline elements, and the internal block-level element tags will expand the external inline tags, so the height of inline elements can be controlled by placing block elements (it is introduced on the Internet that inline elements can only hold text and other inline elements)
For example:

Copy code
The code is as follows:

<a>
<div style="width:100px;height:100px;">Test</div>
</a>

<<:  Detailed explanation of the benefits of PNG in various network image formats

>>:  Methods and steps to use http-proxy-middleware to implement proxy cross-domain in Node

Recommend

Detailed explanation of the adaptive adaptation problem of Vue mobile terminal

1. Create a project with vue ui 2. Select basic c...

Boundary and range description of between in mysql

mysql between boundary range The range of between...

Summary of the use of Datetime and Timestamp in MySQL

Table of contents 1. How to represent the current...

Using Docker+jenkins+python3 environment to build a super detailed tutorial

Preface: After the automation is written, it need...

mySql SQL query operation on statistical quantity

I won't say much nonsense, let's just loo...

Detailed process analysis of docker deployment of snail cinema system

Environmental Statement Host OS: Cetnos7.9 Minimu...

Introduction to the process of installing MySQL 8.0 in Linux environment

Table of contents Preface 1. Linux changes the yu...

The most comprehensive explanation of the locking mechanism in MySQL

Table of contents Preface Global Lock Full databa...

Nginx source code compilation and installation process record

The installation of the rpm package is relatively...

HTTP return code list (Chinese and English explanation)

http return code list (below is an overview) for ...

How to configure MySQL master-slave synchronization in Ubuntu 16.04

Preparation 1. The master and slave database vers...

How to encapsulate query components based on element-ui step by step

Table of contents Function Basic query functions ...

The 6 Most Effective Ways to Write HTML and CSS

This article shares the 6 most effective methods,...

Detailed explanation of nginx reverse proxy webSocket configuration

Recently, I used the webSocket protocol when work...