Stop using div in React (+ Fragment, Semantic Tags)

Поделиться
HTML-код
  • Опубликовано: 1 фев 2025

Комментарии • 122

  • @yuumeko_yt
    @yuumeko_yt Год назад +88

    It’s really nice to review the basics of semantics directly with reactjs and not in an html file. Thanks!

    • @ByteGrad
      @ByteGrad  Год назад +7

      Thanks, that was indeed the goal

  • @samuelsamson690
    @samuelsamson690 Год назад +12

    I love how you go straight to the point cover little things in a very huge way I really appreciate.

  • @thethmuueinsoe
    @thethmuueinsoe Год назад +7

    Another educator that use semantic tags properly and it feels satisfied. In a world of modern component based era, people are misusing 'div' everywhere. Thank you.

  • @ttirasx
    @ttirasx Год назад +9

    I'm now inspired to replace unnecessary div elements throughout my app with more semantic tags. Thanks for the insights!🙏

  • @Waxaranai
    @Waxaranai Год назад +26

    sometimes people forgot to learn the basics, great content!

  • @abderrahmanemya6602
    @abderrahmanemya6602 Год назад +1

    your videos suite my short attention span lol. you talk fast but calmly, and you get straight to the point, i learn a lot in a small amount of time. i would love to connect with you on linkedin

  • @Adenafun
    @Adenafun Год назад +4

    Wow, that was great especially since I liked how fast and straight you talk about everything not jumping around the subject. Thanks a lot ❤

  • @BladyCzlowiek
    @BladyCzlowiek Год назад +4

    this really is the best channel on youtube. The amount of knowledge I gained from this channel. I am looking forward to the nextjs course

    • @ByteGrad
      @ByteGrad  Год назад

      Thanks, appreciate it

  • @core-developers
    @core-developers Год назад +5

    I didn't consider the importance of semantic tags until I started using them in schema structures. They make a significant difference in SEO

  • @ROL4ND-CSS
    @ROL4ND-CSS Год назад +1

    Nice video good information, one side note a is the same as a unless when you add an title, aria-label or aria-labelledby on the .
    Here's some more info on it
    ---
    A landmark containing content that is relevant to a specific, author-specified purpose and sufficiently important that users will likely want to be able to navigate to the section easily and to have it listed in a summary of the page. Such a page summary could be generated dynamically by a user agent or assistive technology.
    Authors SHOULD limit use of the region role to sections containing content with a purpose that is not accurately described by one of the other landmark roles, such as main, complementary, or navigation.
    Authors MUST give each element with role region a brief label that describes the purpose of the content in the region. Authors SHOULD reference a visible label with aria-labelledby if a visible label is present. Authors SHOULD include the label inside of a heading whenever possible. The heading MAY be an instance of the standard host language heading element or an instance of an element with role heading.
    Assistive technologies SHOULD enable users to quickly navigate to elements with role region. Mainstream user agents MAY enable users to quickly navigate to elements with role region.
    ---
    As found on www.w3.org/TR/wai-aria/#region

  • @wizard.of.moz.472
    @wizard.of.moz.472 Год назад +2

    This video was AMAZING! As soon as I started following your advice everything started to click! Please make one explaining forms, etc!

  • @tomich20
    @tomich20 Год назад +1

    thanks, so many years, and now i understand the diff between article and section 🙌

  • @ganesha3559
    @ganesha3559 Год назад +3

    what an exceptional video! Trust me, this is one of a kind.
    Your semantic tag explanation with a real world popular website as a review -- this content cannot be found anywhere in the web
    for this alone you need a Subscribe + Bell icon hit.
    bravo....

    • @ByteGrad
      @ByteGrad  Год назад

      Thanks, appreciate it

  • @boneykingofsomewhere
    @boneykingofsomewhere Год назад +2

    What a fantastic video! This really taught me much more about the meaning and value of semantics and layouts, you got a subscriber buddy :D

  • @blackpurple9163
    @blackpurple9163 Год назад +1

    This cleared up a lot of underlying doubts, great information, thanks for making it so easy

  • @MrPlaiedes
    @MrPlaiedes Год назад +3

    As a lead dev, semantics are important for accessibility but eventually you'll likely be building components that are abstracted away from the actual web page. It's still important to minimize div soup.

  • @touratica
    @touratica Год назад +17

    I really like how informative your videos are, but it sure would be a lot easier to understand you if the sound were a bit louder. That said, keep up with the great content

    • @ByteGrad
      @ByteGrad  Год назад +1

      Sorry about that, will increase volume

    • @fugduhhh
      @fugduhhh Год назад +6

      It's loud enough. Just hit the volume increase button a few times 😒

    • @purshotambohra2131
      @purshotambohra2131 Год назад

      @@fugduhhh correct

    • @tvujtatata
      @tvujtatata Год назад

      @@fugduhhh When you need to do this for every audio content, it becomes annoying. I dont think such a small recommendation hurts anyone. Dont forget about accessibility that the video is also partly about.

  • @tvujtatata
    @tvujtatata Год назад

    Good stuff most people dont talk about. Personally, I am more interested in writing semantically correct markup although I am a bit confused when it comes to details. Nav without a Header if there is nothing but navigation in the header. Section in Main, if there is only 1 table and 1 button on the whole page.

  • @Diego_Cabrera
    @Diego_Cabrera Год назад +5

    You should make a video on the folder structure best practices.

    • @ByteGrad
      @ByteGrad  Год назад +1

      It’s on the todo-list, thanks 👍

  • @manpreetjord1885
    @manpreetjord1885 Год назад +1

    great work. Covered some really good topics which people generally ignore because it still works for them. Just one thing, I thought I was watching the video on 1.25x but when I checked and it was normal speed.

  • @cmdxen
    @cmdxen Год назад +2

    another hidden gem channel 💯, sleek explanation

  • @LynxBaretta
    @LynxBaretta Год назад +1

    I really really like the content of this video a los of things that I was not paying attention and I was still doing like sometimes using divs instead of fragments and correct use of HTML semantics I that I was not aware of their correct meaning. Thanks!

  • @sivadhanushuppalapati4041
    @sivadhanushuppalapati4041 Год назад +2

    This video and the content is too good.

  • @ElliottTheUnicorn
    @ElliottTheUnicorn Год назад +1

    learned a lot, subbed

  • @philipepics
    @philipepics Год назад +1

    is recommended using section with a heading tag, without causes warning

  • @AWaterKnight
    @AWaterKnight Год назад

    You can also return an array of elements, though I do not prefer that, either. I guess being able to pull out articles means that the structural content is meaningful, it does not have the environmental styling or accompanied behavior normally if you just pull out HTML code between opening and closing article tag. A lot of divs are spawned to use them for layouting as said in the video. This way, you can separate the concerns rather than passing the styling information to the contained element and making it their responsibility to correctly apply it.

  • @joantsyn7578
    @joantsyn7578 8 месяцев назад +1

    Great contents!👍

  • @fdkgamer3631
    @fdkgamer3631 Год назад +1

    Istg overwhelmed by everyone..Some people is saying div is everything..Some is saying don't start with the div..need a complete video on when to use div

  • @yuvalbra
    @yuvalbra Год назад +2

    what extensions you used with react and nextjs ?

  • @2gbeh
    @2gbeh Год назад +1

    You said it all. I always encourage my studs to use HTML5 with strict XML guidelines 😎👍

  • @tszhong0411
    @tszhong0411 Год назад +2

    Thanks! I learned new things today.

  • @gurvirbaraich2028
    @gurvirbaraich2028 Год назад +1

    Great, you learned from the comment on your yesterday's video, but it would be nice if you could speak a bit more loud.

  • @tomasburian6550
    @tomasburian6550 Год назад +1

    Thanks for the good stuff, learned something new 👍

  • @thedelanyo
    @thedelanyo Год назад +1

    I guess they called this dividities. And the way first versions of reactjs was it feels natural to wrap everything with div

  • @takeshikriang
    @takeshikriang Год назад +1

    Great video. Clear and concise, thanks

  • @taborgreat
    @taborgreat Год назад

    good video. if you let your jaw relax (drop all biting force deep in your molars and cheeks) and use your jaw more while you talk (let it slide side to side and front to back loosely and with energy with each word), it'll really help with your pronunciation.

  • @zush2305
    @zush2305 Год назад +1

    That's really nice way of covering this topic.
    I had the same idea of diving in into HTML semantics, are there any good resources to read about this that you'd recommend?

  • @aymenbachiri-yh2hd
    @aymenbachiri-yh2hd 7 месяцев назад +1

    Thank you so much

  • @prashlovessamosa
    @prashlovessamosa Год назад +1

    Hello brother when will you release react course on udemy still waiting already completed JS.

    • @ByteGrad
      @ByteGrad  Год назад +1

      Soon. It won’t be released on Udemy. Make sure you’re on the email list :)

  • @gwesa2921
    @gwesa2921 Год назад +4

    Just a tip. Do not use index from an array method as the unique key identifier, it can cause problems when the list is dynamic, meaning that items can be deleted or added. Some of the problems are: Re-rendering, State preservation and animation problems. Better to use an ID, a slug or a hash.

  • @gotosleepqueen7959
    @gotosleepqueen7959 Год назад +2

    I learned a lot from this video!

  • @AlexanderBelov-y8o
    @AlexanderBelov-y8o Год назад +1

    They didn't teach this in college, lol. Thanks!

  • @CottidaeSEA
    @CottidaeSEA Год назад +1

    This is really not an isolated issue in React. It's everywhere in the frontend world. I've seen many cases where multiple nested divs have been used for simple styling, instead of just putting the classes on the first div.

    • @wchorski
      @wchorski Год назад +1

      i'd assume a lot of that is coming from no/low code page builders or CSS frameworks that prioritize modularity over markdown simplicity.

    • @CottidaeSEA
      @CottidaeSEA Год назад

      @@wchorski Partially, but a lot of it is just lack of thought, copy-paste, etc.

  • @lel0uchfr199
    @lel0uchfr199 Год назад

    7:00 for the Link tag you should use to="/" instead of href="/"

    • @jeetgangwar1614
      @jeetgangwar1614 Год назад +3

      In the react-router-dom's component, the attribute to="/" is used. However, when using the component in Next.js, the attribute href="/" is used instead.

    • @lel0uchfr199
      @lel0uchfr199 Год назад

      @@jeetgangwar1614 oh never thought about it, thanks for correcting me and understand something I didn’t knew < 3

  • @AlexMercadoGo
    @AlexMercadoGo Год назад +4

    I wish I wasn’t leaving a Svelte team for a React team

  • @jonzer3028
    @jonzer3028 Год назад +1

    Learned a lot, thanks.

  • @VadimCherepnin
    @VadimCherepnin Год назад +1

    Which Visual Studio Code theme do you use?

  • @luisllaboj
    @luisllaboj Год назад

    What is the keyboard shortcut to import components? Like for "Link" and "Footer" you click on something and they're instantly imported. How can I do that without having to click on the little lightbulb that imports it for me?

  • @maheshadusumilli7833
    @maheshadusumilli7833 Год назад

    Hey Bytegrad.
    I tried searching your course in Udemy for CSS. But it is not appearing there while searching. Only with the link it is working. I am able to see only Javascript course. Can you help on how to find your CSS course from Udemy website?

  • @Ogos-End
    @Ogos-End 9 месяцев назад +2

    Your vid has good semantic meaning..

  • @manmittiwade
    @manmittiwade Год назад +2

    Please make tutorial on big project
    your portfolio website is amazing

  • @harpo187bling
    @harpo187bling Год назад +1

    Professional React & Next.js

    • @ByteGrad
      @ByteGrad  Год назад

      I’m finishing up the details. Make sure you’re on the email list for early-bird pricing 😉

  • @marcowassink3803
    @marcowassink3803 Год назад

    How do you get these code suggestions?

  • @holyjack5215
    @holyjack5215 Год назад

    Here it goes refactoring… Thanks for a great video!

  • @ryostyles9904
    @ryostyles9904 Год назад

    Is it same as using the empty fragment? (
    Items
    )

  • @jaycodes8790
    @jaycodes8790 Год назад +1

    Hey amazing content,
    Could you please make a video on "Modal based routing" in nextjs.
    How one can implement that on a large project. So that i can share a link of a modal directly.

    • @ByteGrad
      @ByteGrad  Год назад

      Thanks. I actually have that on the todo-list haha, stay tuned

  • @AndrewAkaHrun
    @AndrewAkaHrun Год назад +1

    Amazing tutorial!

  • @kamrulislam3841
    @kamrulislam3841 Год назад

    very impressive teaching but try to sound louder please

  • @_abuk
    @_abuk Год назад

    Couldnt you also use display:contents?

  • @iamabishekbaiju
    @iamabishekbaiju 9 месяцев назад +1

    Thanks a lot

  • @complikatd
    @complikatd Год назад

    Your mic sounds grainy for some reason. It seems you're even using a Shure mic too.

  • @abhishekkadam2999
    @abhishekkadam2999 Год назад

    is division/subdivision for section, etc.
    I don't think it's just for styling.

    • @Burrijw
      @Burrijw Год назад

      It serves no semantic purpose and is mostly ignored by screen readers and other assistive tech. The only purpose of a div is to contain other elements for styling, and in some cases, to represent a visual element that cannot otherwise be created with a more semantic element.

  • @eistache3182
    @eistache3182 Год назад +1

    Ok I didn't know that React Fragments can have a key property, I wish I knew this 3 hours ago, literally.

  • @JaGaNezhil
    @JaGaNezhil Год назад +1

    Great work❤

  • @ahmednabil4456
    @ahmednabil4456 8 месяцев назад +1

    thanks

  • @okkaraung9512
    @okkaraung9512 Год назад +1

    waiting for your React, Nodejs and MERN stack courses on Udemy. Big fan.

    • @ByteGrad
      @ByteGrad  Год назад

      Thanks, make sure you’re on the email list :)

  • @jamesgulland
    @jamesgulland 7 дней назад

    Nice vid, but I wouldn’t consider the breadcrumbs to be a ‘section’. Typically sections have headings. You could put as a nav though. Rest of video is spot on

  • @Tin9102
    @Tin9102 Год назад +1

    according to React docs, you should avoid using index as a key tho.

  • @404-not-found-service
    @404-not-found-service 10 месяцев назад +1

    woow Thanks

  • @jinxerific
    @jinxerific Год назад +2

    And I am that Junior Developer...

  • @robertbutcher222
    @robertbutcher222 Год назад

    About the button layout example, why do you even need a fragment? Couldn’t you just straight away map over the buttons inside the section?

    • @ByteGrad
      @ByteGrad  Год назад

      Fragment is still necessary because there will be a span as well for the first one (always need to return 1 React node)

  • @КимЧенОрк
    @КимЧенОрк Год назад

    = ?

  • @jerryalmeida
    @jerryalmeida Год назад

    Stop using && in React Conditional Rendering, use the ternary operator instead

  • @nabeelali6753
    @nabeelali6753 Год назад

    All of these are just good-to-know. At work and in production, the hierarchy of importance is:
    1) Functionality
    2) Optimization
    3) Design
    4) "Best" practices aka nerdsht preferences such as these which are actually negligible

  • @francismori7
    @francismori7 Год назад +1

    HTML cluttering is not an argument. The rendered code is for the browser, not for the developer.

    • @ByteGrad
      @ByteGrad  Год назад

      We often want to inspect HTML in the inspector tool

  • @MarekSax
    @MarekSax 2 месяца назад +1

    Using index as a key is not a good practice.

  • @kakaponick
    @kakaponick Год назад

    Subheding for SEO as always H tag

  • @ck-dl4to
    @ck-dl4to Год назад +1

    section + div everywhere

  • @tomfancode
    @tomfancode Год назад

    Div is good😅
    Sometimes, over engineering

  • @maxterrain
    @maxterrain Год назад

    Thank God I'm using Vue. It looks so complex, while vue is just html on steroids.

  • @sujonpramanik1151
    @sujonpramanik1151 Год назад +1

    It was awesome

  • @TheNarstonerz
    @TheNarstonerz Год назад

    No !

  • @jayakumar9976
    @jayakumar9976 Год назад +1

    This great.

  • @MageLink
    @MageLink Год назад

    I'm going to use many divs as I want

  • @Ogos-End
    @Ogos-End 9 месяцев назад +1

    This video has good.. semantic meaning...

  • @flamme8587
    @flamme8587 Год назад

    Excuse me but, why you didn't show the empty element that works perfectly fine to wrap elements in a empty body instead of React.Fragment " "

  • @shariqueansari9439
    @shariqueansari9439 Год назад +1

    Awesome

  • @adventureswithpasa
    @adventureswithpasa Год назад

    Stop using section, article always use div.

  • @Code_express
    @Code_express Год назад +1

    speak slowly and speak loudly so we can understand what are you saying

  • @RanaMuaviyaAmeermuaviya
    @RanaMuaviyaAmeermuaviya Год назад +1

    Are you a robot | alien ?

    • @ByteGrad
      @ByteGrad  Год назад

      🤣

    • @RanaMuaviyaAmeermuaviya
      @RanaMuaviyaAmeermuaviya Год назад

      @@ByteGrad Yes Sir, I really struggled to find out a single expression on your face. seems like you are just reading news like an anchor person

  • @metaxx5253
    @metaxx5253 Год назад

    Div or die

  • @mac.ignacio
    @mac.ignacio Год назад

    I say just stops using React and use other framework that has better DX.

  • @acegodas7852
    @acegodas7852 Год назад

    i dont know are you just for real or just joking?

  • @MatthewKennedyUK
    @MatthewKennedyUK Год назад

    Better idea… stop using react.

  • @yogeshkadu5453
    @yogeshkadu5453 Год назад +1

  • @randerins
    @randerins Год назад +1

    k, I'll start using instead