zoukankan      html  css  js  c++  java
  • [CSS3 + HTML5] Modernizr

    Modernizr is a library for detecting whether the user's browsers have certain features and based on the availability, we developers will trigger certain functions or styles. In this episode, we will take a simple slideshow and use both javascript and css3 to make the transitions based on features available with libraries such as yepnope and html5shiv. Most importantly, we will scratch the surface of what is graceful degradation and progressive enhancement.

    If you use modren JS Framework like Angular, when comes to IE8, it will report error.  And I believe, IE9 below will be abandoned, moderen web technology will no longer support IE9 below. 

    But it will still valuable to know how to handle css / javascript fallback on old bower.

    1. installing modernizr

    download the entire library from modernizr or cdnjs and put a <script> tag in the <head> of index.html. Open up the browser dev console to see some classes added to the <head> tag:

    <html lang="en" style="" class=" js flexbox canvas canvastext webgl no-touch geolocation postmessage websqldatabase indexeddb hashchange history draganddrop websockets rgba hsla multiplebgs backgroundsize borderimage borderradius boxshadow textshadow opacity cssanimations csscolumns cssgradients cssreflections csstransforms csstransforms3d csstransitions fontface generatedcontent video audio localstorage sessionstorage webworkers applicationcache svg inlinesvg smil svgclippaths"><head>

    2. feature detection

    if a css property is not available:

    .box{
      box-shadow: 0 0 10px 1px #666;
    }
    .no-boxshadow .box{
      border: 3px solid grey;
    }

    if a css property is available:

    .box{
      border: 3px solid grey;
    }
    .boxshadow .box{
      box-shadow: 0 0 10px 1px #666;
    }
    1. html5 tags:

      • include the option for html5shiv when generating the modernizr
      • now semantic html5 tags are easily seen in older browser as well
      • if the entire html5shiv library is not needed, then create the html5 element indivudally and put the javascript in the <head>tags
    2. javascript fallback:

    <script>
        yepnope({
            test : Modernizr.cssanimations,
            yep  : 'slides.css',
            nope : 'slides.js'
        });
    </script>
  • 相关阅读:
    如何利用FineBI做财务分析
    mysqlbinlog 读取多个文件
    Chapter 13. Miscellaneous PerlTk Methods PerlTk 方法杂项:
    跨越多台haproxy 跳转
    haproxy redirect prefix
    大数据决策领跑零售业
    大数据决策领跑零售业
    perl 实现微信简版
    perl 调用按钮输出到文本框
    Chapter 11. Frame, MainWindow, and Toplevel Widgets 框架,主窗体,顶级部件
  • 原文地址:https://www.cnblogs.com/Answer1215/p/5062359.html
Copyright © 2011-2022 走看看