アプリ版:「スタンプのみでお礼する」機能のリリースについて

http://phpjp.com/sample/g0qDjIOTg1+BWw.htm
上記のサイトを参考に、スケジューラーを作ろうとしています。

カレンダー内の数字を左上にもっていきたいんですけど、15行目のtext-align : center;の部分をtext-align:left;としても動きません。

また、翌月や前月、翌年や前年の部分がどこなのかもよくわかりません。
できれば、順を追ってこのプログラムの説明をお願いします。

A 回答 (3件)

なんとなく うっすら思っていたことですが、もしかして俺の行のカウントの仕方と、そちらの行のカウントの仕方が違うのかな?と。


俺の行のカウントの仕方は、改行があるところまでを一行としてます。
件のサンプルコードの15行目が 画面上3行に渡っているので誤差が出たようで。

なので、俺の言う35行目というのは ↓ここになります。#2の人と同じ場所です。

echo '<TD style="color : ' . $c . ';background-color : ' . $bc . '; padding:0 50px 50px 0;">' . $days . '</TD>';

#2の人とは HTMLで適用させようとしているか、CSSで適用させようとしているかの違いです。
さらに、分かりやすいように 昨日のより 大げさにpadding入れてます。50pxの所です。

ちなみに、俺が確認しているブラウザは chromeのみで、他は未確認です。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

こちらの画面で38行目に
echo '<TD style="color : ' . $c . ';background-color : ' . $bc . '; padding:0 50px 50px 0;">' . $days . '</TD>';
を入れると左上になりました!

ありがとうございました!

お礼日時:2013/11/22 09:21

こんにちわ。



これは、おそらく、38行目の下記を、修正すれば、いいと思います。
 ■echo '<TD style="color : ' . $c . ';background-color : ' . $bc . ';">' .   $days . '</TD>';

↓↓↓これを、下記に修正すればいいと、おもう。↓↓↓

 ■echo '<TD align="left" valign="top" style="color : ' . $c . ';background-color : ' . $bc . ';">' .   $days . '</TD>';

このプログラムは結局、PHP処理でHTMLタグを合成して、ECHO命令で、出力しているだけなので、
このテーブルのセル内の表示位置の変更は、HTMLタグの使い方がどうなのかということになると、思います。
HTMLタグのテーブルのセル内の位置の指定は、

 よこ位置 align="left"
 たて位置 valign="top"

 ちなみに、<TD>タグは、個々のセルに対する指定
 <TR>タグは、よこ1列のすべてのセルに対する指定
 このどちらに対しても指定 align valign 指定は、できたが、
 <table>タグに対して、指定すると、テーブル全体のブラウザ上の表示位置の指定になってしまった。

以上です。


 
    • good
    • 0
この回答へのお礼

回答ありがとうござます。

38行目をecho '<TD align="left" valign="top" style="color : ' . $c . ';background-color : ' . $bc . ';">' .   $days . '</TD>';と変えたのですが、何の変化も起きませんでした。

タグの説明も、HTMLとPHPについて知識がないので参考になりました。

ありがとうございました。

お礼日時:2013/11/21 09:39

カテゴリとしては、CSSなので そっちで聞いたほうが適切な回答がもらえるかもしれませんよ。



ちょっと自分でも確認してみましたけど、日付が二桁になるとleftでもcenterでも ほとんど変わんなくなってる印象です。

35行目に padding:0 10px 10px 0; と入れてやれば、paddingで無理やり左上にすることは可能です。

> また、翌月や前月、翌年や前年の部分がどこなのかもよくわかりません。

15行目の一行に全部詰め込まれてる。

翌月 → <A href="?m=' . date('Ym', mktime(0, 0, 0, $month + 1 , 1, $year)) . '">&gt;</A>
翌年 → <A href="?m=' . date('Ym', mktime(0, 0, 0, $month , 1, $year + 1)) . '">&gt;&gt;</A>

$month +1 ってのと $year + 1 ってのがポイント。

以下略

ざっくり説明すると、以下の様な感じ。

function color_get($i) は 曜日ごとに色を返してる。

5~12行目 GETで m(年月が入ってる)が渡されてくれば、それの月を使い、そうでなければ、現在の時間を使う。

15行目 「 << < 2013年11月 > >> 」の部分。

17~21行目 「 日月火水木金土」の部分。

24~41行目 ↑以降の表の部分。

細かい説明は他の誰かに任せます。

俺から言いたいこと。

・ タグごとにスタイル書くのは如何なものかと
・ 実は CSSをうまく使えば、tableを使わない もっとスッキリしたコード書けるよ
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

35行目に padding:0 10px 10px 0; と入れたのですが、枠線が動くだけで数字を左上にできませんでした。

他の部分の説明もありがとうございました。

お礼日時:2013/11/21 09:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!