什么是静态页
传送门
文章起因
最近负责公司商家后台项目的前端业务,可惜只是写静态页,不用写任何 JS 代码,作为一名新时代的FE,一开始我是拒绝的,我怎么能做这么low的事呢?前端必须要高大上啊!什么Angular、React搞起来啊!毕竟我们招聘JD上面也有相应的技能树要求的嘛。
不就是让你切个图嘛~说了这么多,到底能不能做?
所以有了这篇文章。
磨刀不误砍柴工
开工之前先了解一下需求
有人会问了,写静态页还要了解需求?
如果我告诉你,我是照着产品经理的Axure切呢?
了解之后才发现,所有后台都有计划重做。。。。。
开工,我是如何定义现代切图的
UI Framework
既然所有后台都有计划重做,那么统一风格那就是必须的了。既然需要统一风格,那么一套 UI Framework 就是必不可少的了。这里选择 Bootstrap 为基础,通过less进行深度定制,形成公司统一风格UI库。看到这里也许你会说,不就是引用 Bootstrap 吗,如果你这么想,那你真的只能是切图了,换做我,我会这么做。
基于 Bootstrap 使用less进行UI定制。比如基本色调,比如圆角,比如字体大小,比如间距,比如组件样式。通过这些工作你可以深入了解less这么CSS预处理语言, 传送门
自动化构建
What the fuck!不就是写静态页吗?这和自动化构建有什么关系?你丫也太能折腾了。
当然,传统使用DW画页面确实是不需要的。不过如果你是对工作效率有一点点追求的工程师,那么,你一定会采用自动化构建,让我们来看看,自动化之后有什么好处。
-
去除重复工作。通过自动化,你可以将重复的工作都交给构建工具来完成,比如通用头部、尾部、banner等等可以抽象成独立模板引入。
-
通过构建可以进行less代码编译、压缩、合并等,这一切都在你按下 command+s 的瞬间完成
-
避免出现低级错误。如果你经常切图的话一定出现过,拷贝一个新的HTML后发现样式错乱了,原来是css引用没改名字~~,这类问题都可以通过自动化解决。想想生活是不是美好很多呢。
-
解放ctrl+c/v。这就不需要解释了吧~~毕竟80%的代码都是这么产生的嘛。。。
-
提高效率。解决了上面的问题,还不能提升你的效率?
-
增加技能树,既然是前端来做自动化构建,那么我首推 gulp 毕竟 gulp 的口号是 Automate and enhance your workflow 嘛。
-
如果你也是这么做,并且想到有更多益处,请给我留言^_^
协作
传统方式
传统的前后端切图协作方式是, A (切图仔)将静态页面写好之后,通知 B (后端工程师),将页面通过QQ、Email等方式发送给 B , B 将代码下载后,在本地预览,确定符合需求后,将静态页面套成后端模板(例如我司使用的 FreeMarker )。
配合代码管理工具
一个复杂的项目,大多会用到代码管理工具(常用的如Git、SVN等)。有了代码管理工具以后, A 将静态页面写好之后,只需要提交代码,通知 B , B 将代码拉取后本地预览,确定符合需求后,将静态页面套成后端模板。
我是怎么做的?
在我司,后端采用的是SVN进行代码管理。我们前端部门采用的是自己搭建的Gitlab。作为一个前端工程师,我毫不掩饰自己对Git的钟爱。让我使用SVN,我是不乐意的。让后端迁移到Git上?这就像空格与Tab的一场圣战~
当然这不是最主要的,有过切图经验的同学应该都有过这种经验。你幸幸苦苦写完一个页面之后,后端同学往往会发表一些想法(虽然他们自己不写)。这里要改一下,那里改一下,如此等等。产品经理就是这么被揍的,不是吗?为了避免这种情况,最好是不是在后端用之前先让他们看一看?
我的方案如下:
-
提供一个可以在线预览静态页面的地方,后端工程师在使用之前先在线预览页面并给出意见。我采用 Node.js 提供一个Server服务,提供静态页面预览。
-
提供一个在线下载源码的地方,毕竟我不想为了一个代码管理工具,发起一场战斗^_^,通过 Node.js 提供动态打包压缩功能,支持单个页面独立打包和打包所有页面。
-
上面的功能应该是自动化的,基于Gitlab的Hook功能,自动构建发布
一些经验
所谓解决方案,大致可以分为两种:
一种是普适性的,这种往往会形成一套框架,如:Angular、React、vue等;
一种是基于特定业务的,这种往往是多个技能树拼凑起来的一套流程
By vczero
我个人很认可这种说法。我自己更看重基于业务的解决方案,更能够考验一个人的整体素质。
在我看来,解决方案没有最好,只有更合适,需要工程师在不断自我完善的过程中以不断创新的标准要求自己。我倡导一切技术性研究都应该以业务为基础。
我在生活中比较喜欢用意淫这个词,在面试中发现有很多程序员喜欢背名词,以前端为例,什么Angular、React、Node.js、NPM、Bower如此等等,再一细问绝大多数都只是停留在一个demo中,并不能领会这些技术的精髓,以及了解技术的适用场景,我把这些称为意淫;工作中经常遇到一大堆整天吹嘘各种技术名词的人,工作中却仍然不能突破自己的舒适区,我把这些也称为意淫;
写在最后,我个人认为产品经理是这个世界上意淫频率最高的物种。 没错!我就是这么直接。
写在最后的最后,不论你在从事什么工作, 请成长在每一次业务中
上图来自百度~~~~

HTML、CSS和JavaScript是构建现代网页的核心技术:1.HTML定义网页结构,2.CSS负责网页外观,3.JavaScript提供网页动态和交互性,它们共同作用,打造出用户体验良好的网站。

HTML的功能是定义网页的结构和内容,其目的在于提供一种标准化的方式来展示信息。1)HTML通过标签和属性组织网页的各个部分,如标题和段落。2)它支持内容与表现分离,提升维护效率。3)HTML具有可扩展性,允许自定义标签增强SEO。

HTML的未来趋势是语义化和Web组件,CSS的未来趋势是CSS-in-JS和CSSHoudini,JavaScript的未来趋势是WebAssembly和Serverless。1.HTML的语义化提高可访问性和SEO效果,Web组件提升开发效率但需注意浏览器兼容性。2.CSS-in-JS增强样式管理灵活性但可能增大文件体积,CSSHoudini允许直接操作CSS渲染。3.WebAssembly优化浏览器应用性能但学习曲线陡,Serverless简化开发但需优化冷启动问题。

HTML、CSS和JavaScript在Web开发中的作用分别是:1.HTML定义网页结构,2.CSS控制网页样式,3.JavaScript添加动态行为。它们共同构建了现代网站的框架、美观和交互性。

HTML的未来充满了无限可能。1)新功能和标准将包括更多的语义化标签和WebComponents的普及。2)网页设计趋势将继续向响应式和无障碍设计发展。3)性能优化将通过响应式图片加载和延迟加载技术提升用户体验。

HTML、CSS和JavaScript在网页开发中的角色分别是:HTML负责内容结构,CSS负责样式,JavaScript负责动态行为。1.HTML通过标签定义网页结构和内容,确保语义化。2.CSS通过选择器和属性控制网页样式,使其美观易读。3.JavaScript通过脚本控制网页行为,实现动态和交互功能。

HTMLISNOTAPROGRAMMENGUAGE; ITISAMARKUMARKUPLAGUAGE.1)htmlStructures andFormatSwebContentusingtags.2)itworkswithcsssforstylingandjavascript for Interactivity,增强WebevebDevelopment。

HTML是构建网页结构的基石。1.HTML定义内容结构和语义,使用、、等标签。2.提供语义化标记,如、、等,提升SEO效果。3.通过标签实现用户交互,需注意表单验证。4.使用、等高级元素结合JavaScript实现动态效果。5.常见错误包括标签未闭合和属性值未加引号,需使用验证工具。6.优化策略包括减少HTTP请求、压缩HTML、使用语义化标签等。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

Atom编辑器mac版下载
最流行的的开源编辑器

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。