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




  

相关话题

  公司拖欠后端工资逼急了可以删库跑路,逼急了前端该如何何去何从? 
  前端无代码应用的可行性? 
  为什么 CSS :not 选择器不支持复杂选择? 
  接私活结果最后钱要不回来该怎么办? 
  接私活结果最后钱要不回来该怎么办? 
  前端做的页面为什么总是跟设计稿差很多? 
  display:flex在移动端兼容性怎么样? 
  怎么看待一个阿里工作四年出来的,但却连children()这样的方法都不知道是什么意思的前端? 
  chrome41.0.2224.3版本的知乎顶部条为什么显示不正常? 
  有哪些好的免费服务器平台推荐? 

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





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