質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

3103閲覧

PHPとCSS 吹き出し内の背景色をランダムに変更するには

mari.rinn

総合スコア296

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

1グッド

1クリップ

投稿2016/05/04 06:00

###前提・実現したいこと
度々質問させていただいてすみません!今回は、コメントが投稿されると、表示されるスレッドを吹き出しにして、その背景色を投稿に合わせてランダムに色を変えて表示する という処理をしたいと考えています。ランダムに選んだ色は投稿時に、mySQLに色番号をinsertして、SQL文で出力されたものを使用しようと思っているのですが、まずはその前の表示テストで、スレッドの背景の変更は出来ているのですが、吹き出しのはじの三角部分の色のところの処理の仕方がわかりません。

吹き出しのやり方はネット上で公開されているものを使わせていただきました。

###該当のソースコード

CSS

1.bubble { 2 display:inline-block; 3 position: relative; 4 padding:1em; 5 border-radius:15px; 6} 7.bubble:after { 8 position: absolute; 9 content: " "; 10 height: 0; 11 width: 0; 12} 13/* 左三角半分 */ 14.bubble-half-left:after { 15 right: 100%; 16 top: 10%; 17 border-top:10px solid ; 18 border-left:10px solid transparent; 19} 20//-------------------------------------------------------------- 21表示部分 22<?php 23$var = array(); 24$var = array('#e4d2d8','#d3cfd9','#e8d3c7','#e0ebaf'); 25$result = $var[mt_rand(0, count($var)-1)]; 26?> 27<div class="bubble bubble-half-left" style="background:<?php echo $result?>"> 28あいうえおかきくけこ</div>

###試したこと
CSSの、bubble-half-left:afterの中身をbubble:afterの中に一緒に入れてみたりしましたが、三角部分は真っ黒になります。

うまく中央部分と色を連動させることって出来ますでしょうか?
よろしくお願いいたします。

act823👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

三角部分はborder-colorで指定してください^^
<div class="bubbleに背景色用のサブクラスを設けて指定色毎にCSSを書いて置いて
ランダム抽出あるいはDBから選出した値に合わせて classを追加する方がいいとおもいます。

html

1<div class="bubble bubble-half-left pink"> 2<div class="bubble bubble-half-left violet"> 3<div class="bubble bubble-half-left orange"> 4<div class="bubble bubble-half-left yellow">

css

1.pink{ 2background-color:#e4d2d8; 3} 4.pink:after { 5border-right: 10px solid #e4d2d8; 6} 7 8.violet{ 9background-color:#e4d2d8; 10} 11.violet:after { 12border-right: 10px solid #e4d2d8; 13} 14 15.orange{ 16background-color:#e8d3c7; 17} 18.orange:after { 19border-right: 10px solid #e8d3c7; 20} 21 22.yellow{ 23background-color:#e0ebaf; 24} 25.yellow:after { 26border-right: 10px solid #e0ebaf; 27} 28

:after部分訂正しました! ごめんなさい><;;

投稿2016/05/04 07:49

編集2016/05/04 08:15
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2016/05/04 07:58

border-top-color か color で指定しないと、transparent を上書きしませんか?
退会済みユーザー

退会済みユーザー

2016/05/04 08:07

ぁ..そっか四角になっちゃいますね^^ ご指摘ありがとうございます..♪ .pink:after { border-top: 10px solid #e4d2d8; } でダイジョブだと思います^^;;;;
退会済みユーザー

退会済みユーザー

2016/05/04 08:14

ぎゃ! topじゃなくってrightでしたね! おっちょこちょいですみません! .pink:after { border-right: 10px solid #e4d2d8; }
mari.rinn

2016/05/05 03:12

>Sora-tanさん ご回答くださりどうもありがとうございます! なるほど~!ちょっとした発想の転換なのですね。私にはまだまだそれは出来ないので、ほんとに勉強になりました!  で、コードも1例だけで良かったのに、全部書いてくださりとても感謝です! CSSの方はコピペさせていただきまして(colorはborder-topで良かったんです)、 HTMLとPHPの方は、 <?php $var = array(); $var = array('pink','violet','orange','yellow'); $result = $var[mt_rand(0, count($var)-1)]; ?> <div class="bubble bubble-half-left <?php echo $result; ?>"> あいうえおかきくけこ</div> としたら無事にうまく出来ました~~~!! ほんとにどうもありがとうございました!また何かありましたらよろしくお願いいたします~! >kei344さん いつも的確なご回答をくださりどうもありがとうございます! CSSの方もちゃんと勉強されててほんとに素晴らしいです! また何かありましたらよろしくお願いいたします!
退会済みユーザー

退会済みユーザー

2016/05/05 06:03

下向きの三角で良かったんですね…???? つたない説明でごめんなさい 今後ともよろしくお願いします…♪
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問