Why is CSS hard for some devs?

CSS (Cascading Style Sheets) is a language used for describing the presentation of a document written in a markup language. It is often considered hard by developers because it can be difficult to understand the various layout and positioning concepts, as well as the various browser inconsistencies that can arise.
One reason CSS can be hard for developers is that it is a visual language. Unlike programming languages, which have a set of logical rules and syntax, CSS relies heavily on the designer's eye and intuition. This can make it difficult for developers to understand how to create a specific layout or design, especially if they lack experience in design.
Another reason CSS can be hard is that it is a declarative language, meaning that developers describe what they want the layout to look like, rather than specifying how to create it. This can make it difficult to troubleshoot and debug issues, as developers need to understand the underlying layout algorithms and how they interact with the HTML elements in order to make changes.
Despite these challenges, there are ways for developers to get better at CSS. One is to practice, practice, practice. Building small projects and experimenting with different layouts and designs can help developers gain a better understanding of the language and its capabilities. Another way to improve is to learn from more experienced developers by following their code and reading their blog posts and articles.
Additionally, there are many resources available online such as tutorials, videos, and documentation that can help developers learn CSS. Developers can also use CSS frameworks such as Bootstrap and Foundation, which provide pre-built components and styles that can be used to quickly create responsive and mobile-friendly layouts.
In conclusion, CSS can be challenging for developers, but with practice and the right resources, they can improve their skills and become more proficient in creating beautiful and functional layouts.