- Cross-platform Desktop Application Development:Electron,Node,NW.js,and React
- Dmitry Sheiko
- 252字
- 2021-07-15 17:36:24
Defining base rules
Firstly, we will create a Base directory and place the reset styles in there:
./assets/css/Base/base.css
html {
-webkit-font-smoothing: antialiased;
}
* {
box-sizing: border-box;
}
nav > ul {
list-style: none;
padding: 0;
margin: 0;
}
body {
min-height: 100vh;
margin: 0;
font-family: Arial;
}
.is-hidden {
display: none !important;
}
For HTML scope, we will enable font smoothing for better font rendering.
Then, we will set box sizing of every element (*) in border-box. The default CSS box model is content-box, where width and height set to an element do not include padding and border. However, if we are setting, let's say, a sidebar width 250px, I would expect it to cover this length. With border-box, the box's size is always exactly what we set it, regardless of padding or border, but if you ask me, the border-box mode feels more natural.
We will reset indents and markers--for an unordered list--that are used for navigation (nav > ul). We make body element span the height of the entire viewport (min-height: 100vh), remove the default margin, and define the font family.
We will also introduce a global state is-hidden that can be applied on any element to remove it from the page flow. By the way, that is a good example of proactive and, therefore, permissible use of !important. By adding an is-hidden class (with JavaScript), we state that we want the element to hide, with no exceptions. Thus, we will never run into a specificity problem.
- Developing Mobile Web ArcGIS Applications
- arc42 by Example
- 跟小海龜學(xué)Python
- 看透JavaScript:原理、方法與實踐
- Java Web應(yīng)用開發(fā)技術(shù)與案例教程(第2版)
- Learning DHTMLX Suite UI
- bbPress Complete
- Scala程序員面試算法寶典
- Python Data Analysis Cookbook
- Spring Boot+MVC實戰(zhàn)指南
- Django 3.0應(yīng)用開發(fā)詳解
- 從0到1:HTML5 Canvas動畫開發(fā)
- Mastering Concurrency in Python
- 計算機應(yīng)用基礎(chǔ)(第二版)
- Web前端測試與集成:Jasmine/Selenium/Protractor/Jenkins的最佳實踐