百科问答小站 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也表示无能为力啊。。。。




  

相关话题

  web前端使用框架相对于直接用html+css+js有哪些优势? 
  在国内前端领域里优秀的人很多,为什么没人做出 angularjs 、jQuery 之类优秀的框架? 
  为什么 CSS :not 选择器不支持复杂选择? 
  计算机专业的学生如何系统的学习前端技术? 
  smarty 应该由谁来写? 
  大四程序员选择去大公司还是小公司? 
  为什么 input 元素能用 width 属性? 
  开发桌面软件时,如何使用 Mac 上那种扁平化极简风格的 UI? 
  为什么 CSS 这么难学? 
  如何看待 Reaktor Hello World 卫星将搭载 node.js 程序? 

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





© 2025-02-05 - tinynew.org. All Rights Reserved.
© 2025-02-05 - tinynew.org. 保留所有权利