百科问答小站 logo
百科问答小站 font logo



前端工程师讨厌写 CSS 是什么心态? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

其实很多时候我们放大了JavaScript的缺陷。却忽略了CSS的问题……


相信每一个前端都听说过一句话,HTML描述文档结构,CSS决定呈现样式,JavaScript处理行为逻辑。


真正的前端都知道,这句话里面只有三分之二是真的。


user avatar   jin-chi-zhong 网友的相关建议: 
      

我觉得大部分在这个答案下“赞扬”CSS的,都是没写过多少CSS的。

CSS的坑在于:CSS永远只解决一半的问题。

大部分的时候,写CSS就是不断的运用各种“花招”去解决各种正常的需求。

而这些“花招”又带来更多的问题。


不信?我们来看看一个最基础的需求吧:如何在CSS中居中一个元素。

Google一下 css vertical center就会找到一个叫做css-tricks的网站。

分了12类情况讨论如何居中一个元素。

那么,是不是掌握了这12种情况,就完全万事大吉了呢?

真的想多了。。。不信你再Google一下:css center fixed div

然后可以再Google一下:css center fixed div with dynamic content

然后可以再Google一下:css vertical center fixed div with dynamic content

最后你会“很开心的”找到一种万金油的写法:设置left和top为50%,然后用transform: translate(-50%, -50%)修正回来。

你以为故事到此就结束了?????naive


CSS最可怕的地方在于,CSS中很多“事实标准”的东西。或者说,由于实施过程中发现技术限制而导致最后没法实现的和期望一致而达成的妥协标准。

我们就拿刚刚的“万金油”举例吧,为什么这个万金油还是有坑。


上面截图的代码在此:

       <html>   <body>     <div class='popup-mask'>       <div class="popup" style="width: 500px; height: 400px">         <h1>一个弹出窗口</h1>         <div class='popup-mask'>           <div class="popup" style="width: 200px; height: 100px">             <h1>弹出窗口中的弹出窗口</h1>           </div>         </div>       </div>     </div>   </body>   <style> .popup {     position: fixed;     left: 50%;     top: 50%;     transform: translate(-50%, -50%);     background-color: blue; }  .popup-mask {     position: fixed;     left: 0;     top: 0;     right: 0;     bottom: 0;     background-color: rgba(0,0,0,0.3); }   </style> </html>     


嗯,然后就可以继续Google了:css vertical center fixed div with dynamic content with nest support

对于这么复杂的问题,Google也表示无能为力啊。。。。




  

相关话题

  西安电信一码通项目此前报道中提到「两天两夜把 1m 图片优化到100kb」,图像压缩技术难度是怎样的? 
  为什么form表单提交没有跨域问题,但ajax提交有跨域问题? 
  CSS的样式表 内联外部和内部优先级? 
  前端现在怎么这么多人? 
  22岁,师范大学妹子,学的物理专业,现在转行学习前端,大家有什么好的或者不好的建议吗? 
  当一个人说自己“精通JavaScript, CSS3, HTML5”时应该如何理解? 
  不太理解预防csrf攻击中的“双提交cookie”是什么意思? 
  网上都说操作真实 DOM 慢,但测试结果却比 React 更快,为什么? 
  你见过哪些奇趣的代码注释? 
  高级前端工程师是什么样子的,有多厉害?他们的职业规划是怎样的? 

前一个讨论
C++笔试算法题允许用stl函数吗?
下一个讨论
有没有可能推出一款三体的游戏?





© 2024-09-27 - tinynew.org. All Rights Reserved.
© 2024-09-27 - tinynew.org. 保留所有权利