


Originally, I wanted to introduce Semantic-UI, but if I only introduce this framework, there is not much content. There is no need to mention it on the framework-related feature site, so I simply list a few front-end frameworks that I commonly use as a guide. Staged summary.
The core of this article is focused on HTML/CSS frameworks. JS frameworks or JS-core frameworks are not discussed (such as YUI); multi-screen is an established fact, although not all development must consider adaptability. , but the adaptive function at least shows that this framework will not be eliminated in the short term, so frameworks without adaptive functions will not be discussed (such as flaminwork); frameworks that are not open source, not commercially available, or require payment (such as easyframework) will not be discussed ).
Let’s talk about Bootstrap first. I have been using it for the past two years. Nowadays, Bootstrap is a bit bad, and it is inevitable that I am a little tired of aesthetics. But think about it. Before the emergence of frameworks like Bootstrap, the interfaces made by programmers were really terrible. Now they have been upgraded to at least the level of "readable", so the problem of "overflow" cannot be concealed. I usually develop a small tool and use it as the interface, write a low-level script and use it as the document interface. It can also be used for prototypes or layouts in the work environment. Everyone can understand it and there is no learning cost. Overall, this framework has really contributed to the beautification of the Internet.
The advantage of Bootstrap is that it can be used immediately and saves time. The disadvantage is that classes are everywhere (maybe it has improved by the time you read this article, but it does not affect my current complaints), and it is not semantic enough, and it is not suitable for customization. At most, you can change the color. If it is adaptive If you have customization needs, you can consider using Foundation instead. I originally used this framework to write product prototypes (this use has now been replaced by Bootstrap). As a result, in the 3.0 version of the Foundation, the title was changed to "the most advanced responsive front-end framework in the world". world), whether it is the most advanced is debatable, but its customization in terms of adaptability is indeed better than Bootstrap, and it has all the controls of Bootstrap.
I have never used Foundation in a production environment. When it was transformed from a prototyping tool into a front-end framework in June 2012, Bootstrap was already very popular. With Twitter as the technical backing, it was unlikely to convince the program Members turned to Foundation. The current 4.0 version replaces jQuery with Zepto. If Zepto is used in the project, you can consider using it instead of Bootstrap.
The next step is the focus of this article? Semantic-UI. The name is its main selling point: semantics. Semantic-UI is more semantic than Bootstrap and uses easier-to-understand tag names: navigation is nav, main content is main, and the class name is also very clear, and it does not require many layers like Bootstrap. Bootstrap is very versatile and has good compatibility, even compatible with lower versions of IE. Semantic-UI is more geeky and has many CSS3 features, such as Shape and Reveal, which are very interesting. In terms of interface design style, Semantic is flatter than Bootstrap(2):
These features are very fancy, but I now use Semantic-UI to replace Boostrap, mainly because of its JS plug-in ( Modules) are easier to operate, and some commonly used animations are preset. Comments and dynamic information (Feed) in Views are really helpful. Anyway, it has all the Bootstrap functions I need, so I happily changed to Semantic-UI. Most of the style effects Semantic-UI requires less code than Bootstrap, and can be developed faster than Bootstrap with the same proficiency. And it provides a variety of themes, which to a certain extent avoids the problem of Bootstrap being one-sided.
Looking for shortcomings, when I first started using it, I was fooled by the Grid of Semantic-UI. As for the adaptive problem, bootstrap defines the display under different screen widths through md/sm/xs. Although it is troublesome, it is easy to control. Semantic-UI is implemented using Stackable/Doubling, and it can be adjusted manually, so it can be broken without even realizing it. It seems that the design of this framework is closer to Ruby's philosophy rather than Python's. There are many ways to achieve the same requirement. For example, if I want to implement a list, I can use List or Items; if I want to implement a sidebar, I can use Rail or Grid. Having so many choices can sometimes be a confusing problem. Also, the complete library file of Semantic-UI is very large. The JS CSS file is close to 500kb in size. Considering the domestic Internet speed, this size seems a bit huge. You can use NodeJS to build it yourself, provided you know what each component does specifically.
The above framework is suitable for programmers who are good at implementing functions (front-end JS and background-related interactions) but not good at design. Using the above framework, you can quickly make a good Web interface. Another scenario is that you can design it yourself, or have a professional designer design it and then convert it into HTML/CSS. The above framework is too heavy and many functions cannot be used.
In this case, I usually only need a frame for layout (Grid). In 2010, I wrote an article introducing the reason why web design often uses 960px width. At that time, 960gs was still used, but 960gs met the adaptive needs. No, I used lessfreamwork for a while. Recently, the author of 960gs developed unsemantic, so he changed it to unsemantic. When writing adaptive web pages, you need to load different css files according to different devices. Unsemantic has divided them for you, saving time and effort.
Finally, let’s talk about Topcoat, which can be considered Semantic-UI - unsemantic = Topcoat. Sometimes I only need a single page, and I don’t even need a navigation bar. I use the Topcoat layout framework to do it. Topcoat can make various page elements more beautiful, implemented in pure CSS, with small file size, more flexibility and easier customization.
Above, I once again emphasize that the purpose of this article is for evangelism. Programmers developing personal projects can consider trying Semantic-UI. The risk of replacing the front-end framework is small and there are more guinea pigs. No , it will be more conducive for this framework to be used in a production environment after actual users. If you need examples, please refer to: Erya - a content publishing system based on SemanticUI Django. The DEMO address is: http://bbs.dmyz.org/
http://dmyz.org/archives /548

A consistent HTML encoding style is important because it improves the readability, maintainability and efficiency of the code. 1) Use lowercase tags and attributes, 2) Keep consistent indentation, 3) Select and stick to single or double quotes, 4) Avoid mixing different styles in projects, 5) Use automation tools such as Prettier or ESLint to ensure consistency in styles.

Solution to implement multi-project carousel in Bootstrap4 Implementing multi-project carousel in Bootstrap4 is not an easy task. Although Bootstrap...

How to achieve the effect of mouse scrolling event penetration? When we browse the web, we often encounter some special interaction designs. For example, on deepseek official website, �...

The default playback control style of HTML video cannot be modified directly through CSS. 1. Create custom controls using JavaScript. 2. Beautify these controls through CSS. 3. Consider compatibility, user experience and performance, using libraries such as Video.js or Plyr can simplify the process.

Potential problems with using native select on mobile phones When developing mobile applications, we often encounter the need for selecting boxes. Normally, developers...

What are the disadvantages of using native select on your phone? When developing applications on mobile devices, it is very important to choose the right UI components. Many developers...

Use Three.js and Octree to optimize collision handling of third-person roaming in the room. Use Octree in Three.js to implement third-person roaming in the room and add collisions...

Issues with native select on mobile phones When developing applications on mobile devices, we often encounter scenarios where users need to make choices. Although native sel...


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Atom editor mac version download
The most popular open source editor

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

WebStorm Mac version
Useful JavaScript development tools

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Zend Studio 13.0.1
Powerful PHP integrated development environment
