2017-09-21 4 views
0

J'utilise un tableau dynamique (https://puravidaapps.com/table.php2) Avec la doc HTML, je trouve comment changer la forme de la table de Materializecss.com (stripered ou ... bordée) à la ligne:Matérialiser changement de couleur de css fond

doc.getElementById("myTable").getElementsByTagName('table')[0].className = "bordered"; 

Mais je ne sais pas comment changer les différentes couleurs. Où dois-je écrire "card-panel leal-2" si je veux changer la couleur de fond pour 1 ligne sur 2? (J'ai un fichier css avec beaucoup d'informations mais je pense que c'est un composant materialize.css)

Merci!

<!doctype html> 
<head> 
    <meta name="author" <content="puravidaapps.com"> 
    <meta charset="utf-8"> 
    <meta name="viewport" <content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0"> 

    <!--Import materialize.css--> 
    <link type="text/css" rel="stylesheet" href="materialize.min.css" media="screen,projection"/> 

    <title>Table Layout</title> 
</head> 

<body> 
    <div id="myTable"></div> 
    <script> 
    // if you have commas inside your text, feel free to use another delimiter, for example | 
    var delimiter = ","; 

    // get the table to display from the window.AppInventor object and split at new line 
    var urlArray = window.AppInventor.getWebViewString().split("\n"); 
    //var urlArray = location.search.slice(1).split("/n"); 

    var doc = document; 
    var fragment = doc.createDocumentFragment(); 
    var thead = doc.createElement("thead"); 
    var tr = doc.createElement("tr"); 

    // split at delimiter 
    var rowArray = urlArray[0].split(delimiter); 

    addRow(thead, "th"); 
    fragment.appendChild(thead); 

    var tbody = doc.createElement("tbody"); 
    for(i=1;iurlArray.length;i++){ 
     var tr = doc.createElement("tr"); 

     // split at delimiter 
     var rowArray = urlArray[i].split(delimiter); 

     tr.addEventListener ("click", function() { 
     // return index (add 1 because first row is the header row) 
     //window.document.title = this.rowIndex + 1; 
     window.AppInventor.setWebViewString(this.rowIndex + 1); 
     }); 

     addRow(tbody, "td"); 
    } 
    fragment.appendChild(tbody); 
    var table = doc.createElement("table"); 
    table.appendChild(fragment); 
    doc.getElementById("myTable").appendChild(table); 

    // http://stackoverflow.com/a/9236195/1545993 
    doc.getElementById("myTable").getElementsByTagName('table')[0].className = "bordered"; 


    function addRow(dom, tag) { 
     for(j=0;jrowArray.length;j++){ 
     var el = doc.createElement(tag); 
     el.innerHTML = rowArray[j]; 
     tr.appendChild(el); 
     dom.appendChild(tr); 
     } 
    } 
    </script> 
</body> 
</html> 

Répondre

0

Vous devez utiliser Sass pour modifier les valeurs css des préréglages de materialize.

Dans le fichier [_variables.scss][1] vous pouvez modifier différents types de paramètres, si vous voulez approfondir la personnalisation, (en ajoutant des couleurs personnalisées etc ...) vérifiez le dossier du composant et vous obtiendrez ce que vous voulez.

comme .scss est illisible par votre navigateur, vous devez installer SASS et le compiler dans .css en utilisant cette ligne de commande:

sass --watch scss/materialize.scss:compiled/test.css

du dossier de style en supposant le chemin suivant:

  • app
    • style
      • SCSS
      • compilé

sass watch explained