Which one should I use, OOCSS or BEM, when you want to write clean CSS? Is there any reason that you may prefer to use one over the another?
1
There are 1 best solutions below
Related Questions in HTML
- How to store a date/time in sqlite (or something similar to a date)
- How to use custom font during html to pdf conversion?
- Storing the preferred font-size in localStorage
- mp4 embedded videos within github pages website not loading
- Scrimba tutorial was working, suddenly stopped even trying the default
- Is there any way to glow this bulb image like a real light bulb
- With non-graphical maps in Leaflet, zoomDelta doesn't work
- What can I do to improve my coding on both html and css
- Uncaught TypeError: google.maps.LatLng is not a constructor at init (script.js:7:13)
- Bootstrap modal not showing at the desired position on a web page when the screen size is smaller
- Displaying a Movie List on a Website Using Jinja2 and Bootstrap
- How to redirect to thank you page after submitting a Google form embedded into a Google Site?
- Storing selected language in localStorage
- Fences (parenthesis, braces) in HTML and MathML
- Understanding Scroll Anchoring Behavoir
Related Questions in CSS
- How to use custom font during html to pdf conversion?
- Storing the preferred font-size in localStorage
- mp4 embedded videos within github pages website not loading
- Is there any way to glow this bulb image like a real light bulb
- What can I do to improve my coding on both html and css
- Uncaught TypeError: google.maps.LatLng is not a constructor at init (script.js:7:13)
- Bootstrap modal not showing at the desired position on a web page when the screen size is smaller
- How to increase quality of mathjax output?
- Hover animation resetting( seemingly reverting back to original CSS and then again to hover)when moving mouse horizontaly accross a part of an element
- Storing selected language in localStorage
- How to clip grid cell and provide scroll as well?
- KeyboardAvoidingView makes a messy the flexbox
- Rotate an object around another object in javascript
- Understanding Scroll Anchoring Behavoir
- how to use only block layout in this css code?
Related Questions in BEM
- How to set case of BEM in VSCode?
- Using BEM for large set design
- How do I use BEM in a component structure?
- BEM configuration for react typescript
- How to categorize typography variants in BEM?
- Multiple classes on same parent element not working at the same time: BEM
- How to style buttons using BEM?
- I need help, my first time using BEM, is this correct?
- Multiple BEM elements and modifiers in Sass
- Is there any way to style a <svg> fill property inside a <p> tag using just one modifier without violating the BEM CSS principles?
- what is service block in BEM naming methodology?
- Should I create a block or an element BEM CSS?
- Reactjs, Bem naming nested structure with SCSSModule
- Can a BEM Block have optional Elements?
- Double underscore '__' in BEM of NextJS Css module throw error
Related Questions in OOCSS
- CSS Oriented Object When Should I use it?
- CSS methodology: OOCSS vs. BEM
- Extend nested SASS selector inside another SASS file
- OOCSS - only use class to do styling
- How to make a button position independent using OOCSS?
- Why css object should start with prefix o- and component starts with c-?
- Is SASS/SCSS a way to make OOCSS?
- How to manage specificity issues using ITCSS and having forms?
- Separating structure and skin with ITCSS, BEM, and OOCSS
- OOCSS to Long CSS generator
- CSS styles for all the different UL uses
- Are SMACSS, BEM and OOCSS not as portable?
- Font Awesome Shortcut
- OOCSS/modular CSS: Fighting link styles, how to resolve?
- where to put shadowbox modal CSS in SASS SMACSS
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
At the end of the day you should know what your particular use case is and learn what works for you. Obviously if you're working for a company and they prefer one over the other you wanna go with that! My team and I wrote out our own internal CSS namespace specifications which are based off of BEM. The reason we prefer BEM is largely because of how extremely self-documenting it can be. I can look at a class name and know everything about that class's element.
However, there's no right or wrong answer. As long as your code is self documented, clean, and easily maintainable. Use whatever standard you want.