前端工作一般是怎么验收工作结果的?前端工作真的可以做到精确到1px吗?

我在尝试复制页面的时候,一个a元素,我就照着原页面的css computed的属性写的,发现怎么也不能够做到重合,后来我把整个页面拿来,一个div一个div的删除,发现字的的颜色会被它周围的内容影响到,也就是说,就当前能够做到1px,如果内容变了,也不可能保持一样,这个有办法能解决吗?

p.s.复制的是zhihu的header部分,使用的是chrome来显示。


update:
这是今天在知乎上截取的图片:
放大的今天在知乎上截取的图片
这是复制后的删去部分html页面内容的图片,删去script元素,首页这个a元素的css部分没有变化:
复制后删除部分内容页面上截取到的文件

可以看到左边一行象素,在“首”字第一个横线一个是有浅黄色,一个是白色。知乎的页面是今天截的;复制部分是复制几天前的知乎页面,然后我把script元素删除了,保留了最主要的一个css,其他的应该对这个文字元素没有影响。

这是今天我弄的,感觉zhihu自己首页不同时间的相同的字也会产生变化,今天这个“首页”文字感觉和前几天的显示也不同。这个放大了,肉眼都可以看出不同,如果用image diff网站工具来做,颜色上的细微差别会更多。

如果要再严格,我会再做几遍,不改动css,仅删除script和部分div,再将当天的zhihu首页和我删除了部分内容的reduce版本进行比较。

阅读 3.3k
4 个回答

把矢量图形光栅化的时候,斜线只能用方块来显示,曲线只能折线来表示,虽然尺寸在像素级别,但人眼还是能感觉到这些线条的边缘的不平滑,也就是锯齿,于是乎抗锯齿技术应运而生,简而言之就是在处理锯齿边缘的时候采用一些过渡的色块来填充。
抗锯齿算法多种多样,效果各有千秋,并且同一种算法在不同的显示器上、不同的显示器设置下,所表现的效果都不一样,所以这种细节不仅仅是前端无能为力,哪怕谷歌、微软的专家来也没有办法,前端能干预的只有开启和关闭这个效果(老旧浏览器上无法干预)。
所以验收的时候,这种差异就不必吹毛求疵了。

我就服你比对字体颜色, 字体颜色和显示效果的跟系统设置有关系的。
字体有平滑等其他设置,一个纯色字体显示出来是有差距的,除非你关闭系统设置,用经典模式。

大致的开发完成后的流程说一下:

  1. 首先自测通过,页面跟设计稿差不多,功能完成,起码不是点击一下就报错
  2. 交付测试,测试功能及ui,修复bug
  3. UI验收,UI设计师验收样式
  4. 产品验收,产品验收整体功能

也就是说你开发完,ui正常,功能流程能走通,直接交出去就行了,后续的验收交给别人

肯定能做到像素级模仿啊。

“字的颜色会被它周围的内容影响到”,什么意思没明白?字的颜色就是 color 来定义,被周围内容影响到是指什么?颜色值有 alpha 通道?

内容变了,只要你的字体,大小,行高都一样,那就能精确到 1px 复刻啊。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题