我发现网上很多前端方面的教程和文章(例如w3cschool,菜鸟教程,慕课网等)都仅仅是对基础知识做讲解,具体到实践环节上还有很多细节没有交代清楚,题主本人还是大学生未参加过工作,不清楚实际开发中的最佳实践有哪些,下面整理了一些常见问题,欢迎大家帮忙补充并且提供解答,感谢!!!
- 如果是纯电脑端web页面,整个web页面的container宽度该如何选择?需要考虑用户浏览器在不同宽度下的表现吗?(换句说法,在电脑端也有可能出现用户拉伸浏览器,或者使用操作系统提供的缩放机制,导致显示器物理宽度像素值和实际情况不一样,是否要考虑这种情况下的响应式布局问题?)
- 字体大小是使用px还是em和rem?我还看到有些人不仅仅是字体使用em单位,甚至连width和height等也使用em单位,这样有什么优点和缺点吗?最佳实践应该是如何选择单位呢?如果使用rem和em的话,父元素的font-size又应该根据什么来选择?
- web语义化有必要做吗?nav,section,header,footer这些标签实际有人用吗?(我特意观察了BAT三家的网站首页,均没有使用,都是清一色div,可能是照顾到浏览器兼容性问题?)如果我的html并不需要让用户阅读,那用了web语义化有什么实际意义吗?对SEO或者无障碍阅读设备有好处吗?
- 如果不考虑旧浏览器兼容性问题,页面布局使用flex是当前2019年最好的选择吗?
- 我的页面并无过多交互,并不打算设计成完全前后端分离,但是有大量公共组件可能要跨页面使用,这种需求场景有什么框架可以简化前端开发工作吗?(我了解了一下,react对于轻量级组件封装有很好的支持性,我这种场景可以使用吗?或者还有什么比react更加适合我这种情况的框架?)
- 我只在SPA上用过webpack。我现在并不是做SPA,但是也有可能需要使用到打包和构建,是否意味着我针对每个页面每个html都要写一个webpack配置?或者还有其他更好的构建方式吗?
说实话,你提的这些问题,每一个都够写一篇文章来详细讨论了,因为你提的比较集中,我也就草草答了几句,如有觉得不妥之处,欢迎直接评论或者私信我一起探讨。