新規投稿
フォローする

一覧表示の際に項目名に背景色をつけたい

一覧表示の際に、項目数が多いので、背景色をつけたいのですが、その場合CSSで記載するのかと思いますが、具体的な書き方が分からず、アドバイスいただけないでしょうか。

下記のように、開催日と作成者を黄色、共有事項は水色、議論や相談事項と報告をピンクの背景色にしたいです。

background-color: #FF9999;
上記のような記載かと思いますが、クラス名などが分からず…
全文としてはどのように記述すれば良いでしょうか。

0

7件のコメント

Avatar
江田篤史

maru様

お世話になっております。 cstapの江田と申します。

nth-childという疑似クラスを用いるとうまく指定できるかと思います。

th:nth-child(2), td:nth-child(2),
th:nth-child(3), td:nth-child(3){
  background-color: #FFFF99;
}
th:nth-child(4), td:nth-child(4){
  background-color: #9999FF;
}
th:nth-child(5), td:nth-child(5),
th:nth-child(6), td:nth-child(6){
  background-color: #FF9999;
}
0
Avatar
Maru

江田様

こちらnth-childという疑似クラスに関して教えていただきありがとうございます。

早速設定してみたところ、レコードに登録してあるデータのほうも色が変わってしまうようでした。

また、一覧が複数ある場合には、列の数が異なるため、設定したい色とは異なる色が反映されてしまいました。

もし可能でしたら、下記をご教授いただけないでしょうか?

①項目名の箇所のみ対応するにはどのように記述すればよいでしょうか?

 DOMで指定となるのでしょうか?その場合のクラスは、ディベロッパーツールで確認するかと思いますが、

 以下のコードだと色が反映されませんでした。

 こちらは記述が何か間違っているのでしょうか?

*******************

recordlist-header-cell-gaia label-5520057 recordlist-header-sortable-gaia recordlist-sort-desc-gaia
recordlist-header-cell-gaia label-5520065 recordlist-header-sortable-gaia recordlist-sort-desc-gaia
recordlist-header-cell-gaia label-5520083 recordlist-header-sortable-gaia{
background-color: #7FFFD4;
}

*******************

ディベロッパーツール上でElementのところに「background-color: #7FFFD4;」を入れると画面上はうまく反映が

できていたのですが、もしかしたらクラス名が違うのか、あるいは記述の仕方が違うのかがわかりませんでした。

アドバイスいただけると幸いです。

よろしくお願いいたします。

0
Avatar
江田篤史

maru様

お世話になっております。 cstapの江田です。

項目名の箇所のみ対応する場合は、単純にtdの指定してを外して以下のようになります。

th:nth-child(2),
th:nth-child(3){
  background-color: #FFFF99;
}
th:nth-child(4){
  background-color: #9999FF;
}
th:nth-child(5),
th:nth-child(6){
  background-color: #FF9999;
}

複数の一覧に対応させるのであれば、JavaScriptで書いてしまった方が楽そうですね。

(function() {
  "use strict";
  kintone.events.on("app.record.index.show", function(event){
    var colors = {
      "開催日": "#FFFF99",
      "作成者": "#FFFF99",
      "共有事項": "#9999FF",
      "議論や相談事項": "#FF9999",
      "報告": "#FF9999",
    };
    [].forEach.call(document.getElementsByClassName("recordlist-header-cell-gaia"), function(th){
      var column = th.getElementsByClassName("recordlist-header-label-gaia")[0];
      if(column) th.style.background = colors[column.innerText];
    });
    return event;
  });
})();
1
Avatar
Maru

江田様

お世話になります。

こちらJavaScriptの方法をアドバイスいただきましてありがとうございます!!

一覧ごとに項目の列番号が違ったので、こちらのJavascriptの方法を教えていただき、無事にやりたいことができました。

ありがとうございます。

引き続き、勉強続けていきます。

0
Avatar
Maru

江田様
もしお分かりでしたらご教授いただきたいのですが、上記の画面上での色付けはJSにて設定できました。
これをエクセルでダウンロードした際にも同様の色がついた状態で書き出しをするのは、キントーンの仕様上無理なのでしょうか?
あるいは、カスタマイズすれば可能な範囲なのでしょうか?
もし後者の場合は、どのように対処すべきすか?
初心者なので難易度が高ければ諦めようと思いますが、そもそも仕様上不可なのかどうかは今後のためにも知りたく…。


お分かりの範囲で構いませんので教えていただけないでしょうか。
よろしくお願いいたします。

Maruにより編集されました
0
Avatar
江田篤史

Maru様

お世話になっております。
cstapの江田です。

不可能ではありませんが、レコードの取得やエクセル出力のコードを書かなければいけないので、上記のコードと比べれば難易度は高いです。

「JavaScript エクセル出力」などで検索すれば、色々と出てくるので調べてみると良いと思います。

0
Avatar
Maru

江田様
こちら教えてくださりありがとうございます。
もう少しJSも勉強した後でまたチャレンジしてみます!
ありがとうございました。

0
サインインしてコメントを残してください。