Comments (7)
You said it yourself: React is "a JavaScript Library", not a framework. It's unopionated and doesn't come with batteries included.
Besides, what's stopping your from just using vanilla CSS?
<div className="class1 class2" />
from react.
I feel, having its own library adds a bit more to 'load' to React. Think of React as HTML with some extra functions.
In this way, you see HTML could be styled with plain CSS classes or with frameworks like Tailwind, Bootstrap and the like. Same as React (Only it has some extra styling options which you mentioned above). You could stick to plain CSS or learn something like Tailwind which works the same across all systems and that's it. No need to learn all of the styling systems
from react.
Nice dude it was so helpful.
from react.
React is said to be a JavaScript Library for creating User Interface.
Now, I've wondered, how we can have a User Interface without styles?
This is where I'm asking that-- why doesn't React have an in-built styling System where we can directly style our React Components without using third party tools like Styled Components, Emotion, Aphrodite, Linaria and so on?
You see, Web Development has become too complex and too complicated because there's just too much to learn to create a simple thing as User Interface.
This means that to style my React Application after learning JavaScript and learning React, I still need again to learn a new library or framework like Styled Components, Emotion, Aphrodite, Linaria and so on.
This is too much work. So I am requesting that React should come with the styling feature in-built: so that I will just learn it together along the way while learning React, and not be bothered with learning a new styling library after going through the stress and pain of learning HTML, CSS, JavaScript and React.
Can React make Components styling an in-built React feature?
Regards.
React's philosophy is to focus on providing a core set of features for building user interfaces and leaving styling to be handled by external tools and libraries. This is because styling is a complex and ever-evolving aspect of web development, and there are many different approaches and tools available to handle it.
React's approach of separating concerns, by separating the view (HTML and CSS) from the logic (JavaScript), makes it possible to use different styling solutions with React. There are many popular styling solutions like Styled Components, Emotion, Aphrodite, Linaria, and many more, each with their own unique approach to styling React components.
By not providing an in-built styling system, React allows developers to choose the styling solution that best fits their needs and preferences. This way, developers can use the same styling solution across multiple projects and can easily switch to a different solution if needed.
However, if you prefer an in-built styling solution, there are other libraries and frameworks that provide this, such as Vue.js and Angular. These frameworks have built-in styling systems that allow developers to style components directly without using external libraries.
Ultimately, it is up to the individual developer and project requirements to choose the best approach for styling React components.
from react.
article id='article' className={[${essayList.container} animate__animated animate__bounceInUp
]}
You can see
from react.
This issue has been automatically marked as stale. If this issue is still affecting you, please leave any comment (for example, "bump"), and we'll keep it open. We are sorry that we haven't been able to prioritize it yet. If you have any new additional information, please include it with your comment!
from react.
Closing this issue after a prolonged period of inactivity. If this issue is still present in the latest release, please create a new issue with up-to-date information. Thank you!
from react.
Related Issues (20)
- [React 19] infinite loop when using React lazy & functional formAction together. HOT 4
- The const array variable value populated in a function does not reflect the updated values when called in another function in Firefox HOT 2
- Bug: DoS vulnerability in ws dependency
- [React 19] Inconsistent "cache" api with Async Operations in react-server HOT 2
- [Compiler Bug]: Increment expression in for-loop loses assignment operation HOT 4
- Bug: TypeError: Cannot read properties of null (reading 'useState')
- Ensures role attribute has an appropriate value for the element (aria-allowed-role - https://dequeuniversity.com/rules/axe/4.7/aria-allowed-role?application=msftAI) HOT 1
- Ensures ARIA attributes are allowed for an element's role (aria-allowed-attr - https://accessibilityinsights.io/info-examples/web/aria-allowed-attr)Bug: HOT 1
- Bug: HOT 1
- [VLG]¿Cómo hablar con Vueling por teléfono? @telefono españa HOT 1
- hook invalid
- Feature request: Expose additional profiling tools for library testing HOT 5
- Bug: "Should have a queue. This is likely a bug in React" HOT 11
- [React 19]
- [React 19] requestFormReset reports TypeError Cannot read properties of null (reading 'queue') on repeated form submissions HOT 3
- [Compiler Bug]: healthcheck do not check next.js StrictMode HOT 5
- [React 19] Different behaviors with `preload` method HOT 2
- Bug: React 18 SSR Sometimes fallback to CSR without throw any errors on Prod Mode, The fiber node which tag is "HostRoot"(3)has flags "Snapshot"(1024),it works fine when flags is Update(4) HOT 1
- Bug: ForwardRef components cant have display names or types HOT 2
- Consider changing the next property type of the update object of the dispatchSetState function from any to null
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react.