WEBデザインの勉強

WEB制作初心者が1から勉強するブログ。

色の変換ができるライブラリRGB color parser in JavaScript

f:id:mmmmofu:20170511231213p:plain

公式サイト
RGB color parser in JavaScript / Stoyan's phpied.com

デモ
http://efu.sakura.ne.jp/web/background/

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>CSSの色の値を変換</title>
  <link rel="stylesheet" href="http://efu.sakura.ne.jp/web/common/css/reset.css">
  <link rel="stylesheet" href="css/style.css">
  <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
  <script src="js/rgbcolor.js"></script>
  <script src="js/script.js"></script>
</head>
<body>
  <div class="head">
    <h1>CSSの色の値を変換</h1>
  </div>
  <div class="section section01">
    <p class="css_color"><span>CSSで指定した値</span>#588C7E</p>
    <div class="text text01">
      <p class="text01-01"><span>JSで取得した値</span></p>
      <p class="text01-02"><span>R・G・Bを別々に取得</span></p>
      <p class="text01-03"><span>16進数</span></p>
      <p class="text01-04"><span>rgb</span></p>
    </div>
  </div>
  <div class="section section02">
    <p class="css_color"><span>CSSで指定した値</span>rgb(242, 227, 148)</p>
    <div class="text text02">
      <p class="text02-01"><span>JSで取得した値</span></p>
      <p class="text02-02"><span>R・G・Bを別々に取得</span></p>
      <p class="text02-03"><span>16進数</span></p>
      <p class="text02-04"><span>rgb</span></p>
    </div>
  </div>
  <div class="section section03">
    <p class="css_color"><span>CSSで指定した値</span>rndianred</p>
    <div class="text text03">
      <p class="text03-01"><span>JSで取得した値</span></p>
      <p class="text03-02"><span>R・G・Bを別々に取得</span></p>
      <p class="text03-03"><span>16進数</span></p>
      <p class="text03-04"><span>rgb</span></p>
    </div>
  </div>
</body>
</html>
html,body {
  width: 100%;
  height: 100%;
}

.head {
  display: table;
  width: 100%;
  height: 10%;
  background: #333;
}

h1 {
  display: table-cell;
  color: #FFF;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  vertical-align: middle;
}

.section {
  float: left;
  width: 33.333%;
  height: 90%;
}

.section01 {
  background-color: #588C7E;
}

.section02 {
  background-color: rgb(242, 227, 148);
}

.section03 {
  background-color: indianred;
}

.css_color {
  margin-top: 50px;
  font-size: 20px;
  font-weight: bold;
  color: #FFF;
  text-align: center;
}

.css_color span {
  display: block;
  padding-bottom: 6px;
  font-weight: normal;
  font-size: 10px;
}

.text {
  margin-top: 50px;
  color: #FFF;
  text-align: center;
}

.text p {
  display: block;
  padding: 0 0 50px;
}

.text p span {
  display: block;
  padding-bottom: 6px;
  font-size: 10px;
}
$(function(){
  var bgColor1 = $('.section01').css('background-color');
  var bgColor2 = $('.section02').css('background-color');
  var bgColor3 = $('.section03').css('background-color');
  $('.text01-01').append(bgColor1);
  $('.text02-01').append(bgColor2);
  $('.text03-01').append(bgColor3);
  var color1 = new RGBColor('#588C7E');
  var color2 = new RGBColor('rgb(242, 227, 148)');
  var color3 = new RGBColor('indianred');
  if (color1.ok) {
    $('.text01-02').append(color1.r + ', ' + color1.g + ', ' + color1.b);
    $('.text01-03').append(color1.toHex());
    $('.text01-04').append(color1.toRGB());
  }
  if (color2.ok) {
    $('.text02-02').append(color2.r + ', ' + color1.g + ', ' + color1.b);
    $('.text02-03').append(color2.toHex());
    $('.text02-04').append(color2.toRGB());
  }
  if (color3.ok) {
    $('.text03-02').append(color3.r + ', ' + color1.g + ', ' + color1.b);
    $('.text03-03').append(color3.toHex());
    $('.text03-04').append(color3.toRGB());
  }
});