search
HomeWeb Front-endCSS TutorialIs Nesting Block Elements Inside Inline Elements in HTML5 Always Acceptable After Applying CSS?

Is Nesting Block Elements Inside Inline Elements in HTML5 Always Acceptable After Applying CSS?

Breaking the CSS Rule: Inline Elements Containing Block Elements

Traditionally, nesting block elements within inline elements was considered a violation of HTML structure. However, in HTML5, this practice becomes permissible. Does this mean it is acceptable to convert a block element to inline even if it encloses another block element?

The CSS Specification's View

According to the CSS 2.1 Specification, when an inline element contains a block-level element, the inline element splits into two separate boxes, enclosing the block element and its consecutive block-level siblings. These resulting anonymous block boxes become siblings to the original inline element.

Example:

Consider the following HTML markup and CSS rules:

<div><p>This is a paragraph</p></div>
div {
  display: inline;
}

In this scenario, the div becomes inline, while the p element remains block-level by default. According to CSS 2.1, this results in the div being broken into two anonymous block boxes around the p element.

Browser Implementation and Validity

The CSS specification provides guidance on browser behavior, but implementation consistency and interpretation among modern browsers may vary. Whether or not such nesting is considered valid or not after applying CSS rules depends on the particular browser and its implementation.

Conclusion

While HTML5 allows nesting block elements within inline elements, converting a block element to inline when it already contains a block element presents a gray area. The behavior is technically specified in CSS but subject to browser interpretation and implementation. It's crucial to consider browser compatibility and the intended behavior of your web application before employing this practice.

The above is the detailed content of Is Nesting Block Elements Inside Inline Elements in HTML5 Always Acceptable After Applying CSS?. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Using Immer for React State ManagementUsing Immer for React State ManagementApr 18, 2025 am 10:41 AM

We make use of state to keep track of application data. States change as users interact with an application. When this happens, we need to update the state

The Making of an Animated FaviconThe Making of an Animated FaviconApr 18, 2025 am 10:35 AM

It’s the first thing your eyes look for when you’re switching tabs.

Using Your Domain with a Netlify-Hosted SiteUsing Your Domain with a Netlify-Hosted SiteApr 18, 2025 am 10:34 AM

Netlify has their own docs for Custom Domains, so if you're looking for horse's mouth technical docs on this stuff, that should be treated as the source of

Pseudo CodePseudo CodeApr 18, 2025 am 10:33 AM

Yonatan Doron wrote a post on Medium not long ago called "Art of Code — Why you should write more Pseudo Code." Love that title, as a fan of pseudo code

Let's Give Grunt Tasks the Marie Kondo Organization TreatmentLet's Give Grunt Tasks the Marie Kondo Organization TreatmentApr 18, 2025 am 10:31 AM

We live in an era of webpack and npm scripts. Good or bad, they took the lead for bundling and task running, along with bits of Rollup, JSPM and Gulp. But

Branching Out from the Great DivideBranching Out from the Great DivideApr 18, 2025 am 10:27 AM

I like the term Front-End Developer. It's encapsulates the nature of your job if your concerns are:

A Beginner's Journey to Launching a WebsiteA Beginner's Journey to Launching a WebsiteApr 18, 2025 am 10:20 AM

In September 2018, I was just a few months into my journey of learning web development. As I'm sure is the case with many new developers, it was a big task

All the New ES2019 Tips and TricksAll the New ES2019 Tips and TricksApr 18, 2025 am 10:19 AM

The ECMAScript standard has been updated yet again with the addition of new features in ES2019. Now officially available in node, Chrome, Firefox, and Safari

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Have Crossplay?
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool