| 1.opacity |
| opacity:0将元素本身及其子元素都置为不可见的,而元素本身依然占据它自己的位置并对网页的布局起作用,它会响应用户交互 |
| |
| .hide { |
| opacity:0 |
| } |
| |
| 2 .visibility |
| visibility:hidden将元素本身及其子元素都置为不可见的, 而元素本身依然占据它自己的位置并对网页的布局起作用,它不会响应用户交互.如果想让子元素显示,则设置子元素的visibility:visible; |
| .hide { |
| visibility:hidden |
| } |
| |
| 3.display |
| |
| display:none使用这个属性,被隐藏的元素对网页的布局不起作用。不仅如此,一旦display设为none任何对该元素直接的用户交互操作都不可能生效。此外,读屏软件也不会读到元素的内容。这种方式产生的效果就像元素完全不存在。通过DOM依然可以访问到这个元素。因此你可以通过DOM来操作它。 |
| |
| .hide { |
| display:none |
| } |
| |
| 4.position |
| |
| position:absolute 将top和left设置成足够大的负数,相当于把元素放到可视区域外,它不会影响布局,能够让元素保持可操作性,在读屏软件上可以被识别。 |
| |
| .hide { |
| position:absolute; |
| top:-9999px; |
| left:-9999px; |
| } |
| |
| 总结一下:opacity,visibility影响布局,前者不影响交互,后者影响交互; |
| |
| display不影响布局,影响交互; |
| |
| position 不影响布局,不影响交互; |
| .padding-test { |
| padding:1px 4px 2px 3px; |
| } |
| 前后端分离并不只是开发模式,而是web应用的一种架构模式。在开发阶段,前后端工程师约定好数据交互接口,实现并行开发和测试;在运行阶段前后端分离模式需要对web应用进行分离部署,前后端之前使用HTTP或者其他协议进行交互请求。 |