Is div still a div?

Milos Protic on September 16, 2019

Is it just me, or does anyone else dislike the fact that we are close to the point where div is not a div anymore? What are your thoughts about where web development is heading?

markdown guide

I don't understand the question. Some context?


The context would be JSX, and it's popularity. Developers write something that looks like HTML, but it's not HTML.


In case we're talking about JSX

For me it's absolutely fascinating how things evolve. What you wrote about is an example of how something animate arises from inanimate things. Earlier, some "dead" elements such as the aforementioned div were available to developers. These days the community has decided that we use reactive components to build the application.

Just in case someone has a boring Monday πŸ˜…

// πŸ˜‰ Place me different places in your app and I promise to work
// ❀ I'm fascinating inside
// πŸ”¨It's super easy to move me around your application structure
// ...

// πŸ‘‹ Click one of the buttons that I `render()` to make me fly away from you

// There are different species of course 😊
// πŸ”₯ My buttons are red

// πŸ’ͺ Every my button is disabled by default and you cannot change it...

// πŸ€— You can put elements in me and I will make them more wonderful
// πŸ’Ύ I save myself (my state) in `localStorage` and in the clouds (aws) when you accidentally close the application
    <h1>My awesome adventure</h1>
    <div>Lorem ipsum</div>
    <textarea>Lorem ipsum</textarea>
    <p>Note created {timestamp} in {location}</p>

<MagicPanel rules={[dragonsAllowed: false]}>
    {/* Ooppsss... πŸ˜‚ */}

I know it is a bit abstract answer but it was supposed to be 😸.


Yes, we are talking about JSX :)

Do note that div is just an example element, the title is an abstract assumption that we no longer write normal good old HTML.

I mean, since React team introduced the JSX (as far as I know), our components do contain the word div but contextually it is not. It gets compiled to JavaScript that creates the div. So basically we have an extra step comparing to the old ways of doing things. I cannot decide whether this (everything is JavaScript) is good or bad, considering that it's really powerful and useful for templating.


We should use semantic HTML over div like Article, Nav, Header, Section and many more. Its super hard to debug JSX when everything is just a div.


Div is still div :P
If you misuse div then you are not doing your work properly.


I agree. I have not done much with react, so can't way in there, but custom elements have been around for a while. As long as we as designers and devs still build contextual and well crafted code all should be fine. :)


div is still a div.
When you need an article, use article. When you need a section, use section. But when you just need a block container to arrange common stuff, for UI purposes, when a grouping elements does not need to convey semantic message. Use div.

code of conduct - report abuse