【css】フッターの文字を上下左右ともにセンタリング

フッターの文字を上下左右ともにセンタリングしたときの覚書

左右のセンタリングだけだと、footer にtext-align を指定するだけで簡単だった。上下のセンタリングだけも display: table-cell が有効だった。しかし、footer の width が 100% では、margin:0 auto が効かず、text-align と vertical-align の両立にてこずった...。

css
--------------------------------------------
#footer {
text-align:center; /* footer 内の div を左右中央にする */
border-top: 1px solid #009933;
background: #fff;
width:100%;
height: 30px;
box-sizing: border-box; /* パディングとボーダーを幅と高さに含める */
clear: both; /* 2カラム解除 */
}

#footer > div {
/* text-align:center を有効にするため inline 化 */
display: inline-block;
background: #999; /* 幅を視覚化するために色をつけている */
}

/* 上下のセンタリング */
#footerText {
height: 30px; /* footer と同じ高さを指定 */
display: table-cell;
vertical-align: middle;
}
--------------------------------------------

html
--------------------------------------------
<div id="footer">
<div>
<div id="footerText">フッターの文字</div>
</div>

</div>
--------------------------------------------

【秀丸エディタ】マクロで正規表現を使った置換をする

秀丸エディタのマクロで正規表現を使った置換をする記述

-----------------------------------------
//正規表現を使った置換を実行
replaceallfast"パターン","置換後の文字",regular;
-----------------------------------------

「.mac」などの拡張子で保存して、「マクロ」-「マクロ実行」からファイルを選択する

---メモ---

replacedown → 下方向に置換する
replaceup → 上方向に置換する
replaceall → すべて置換する
replaceallfast → すべてを高速に置換する

regular は正規表現を使うためのオプション。省略した場合は正規表現なしの置換になる。

//エスケープは¥¥ 例: 「.」ではじまる文字列
replaceallfast"^¥¥..*$","",regular;

//後方参照は¥¥1

【秀丸エディタ】マクロでのコメントアウト

秀丸エディタでマクロファイル内で使用できるコメントアウトの覚書

//一行のコメントです

/*

複数行の
コメントです

*/

【秀丸エディタ】正規表現で改行を含む一行を丸々削除する

秀丸エディタの正規表現で、改行をふくんだ一行をまるまる削除する記述

正解
------------------------------------
^なんらかパターン¥n
------------------------------------

以下のやり方だと改行が残ってしまうのでダメ

×
------------------------------------
^なんらかパターン$
------------------------------------

×
------------------------------------
^なんらかパターン¥n$
------------------------------------

jQuery uiのdialogでタイトルに変数を使って更新させる

jQuery ui の dialog で タイトルを設定する場所は主に二箇所ある。

ひとつは jQuery ファイル内
---------------------------
//jQuery_ui の詳細設定
$('#dialog').dialog({
autoOpen: false,
width: 600,
title: 'ここがタイトルになる',
modal:false,
resizable:false,
buttons: {
"元に戻す": function() {
//$(this).dialog("close");
alert('元に戻す');
},
"閉じる": function() {
$(this).dialog("close");
}
}
});

---------------------------

もうひとつは html(PHP)ファイル内
---------------------------
<div id="dialog" title="ここがタイトルになる">
<p>ここがダイアログの内容</p>
</div>
---------------------------

二箇所どちらにもタイトルを設定すると jQuery ファイルの情報が優先される。

このたび、タイトルに変数を用いて、条件によってタイトルの内容を変更したかったのだが少し苦戦した。上記二箇所をいじってもタイトル文章がうまく更新できなかったのだ。
結論だけ言うと、タイトルはオプションを使っても指定できる。

jQuery ファイル内でダイアログのタイトルを上書き
---------------------------
$('#dialog').dialog('option', 'title', '新しいタイトル');
---------------------------

ここに変数を持ってきて、希望通りに表示できた。

参考サイト

【javascript】テキストエリアの文字列を別のテキストエリアに表示する

javascript で、テキストエリアの文字列を別のテキストエリアに表示したときの覚書

以下のようにテキストエリアが二つある。
----------------------------------------------
<div>
<form id="form1">
<textarea name="msg" cols=40 rows=4 id="textarea1">
この文字を textarea2 に表示したい
</textarea>
</form>
</div>

<div>
<form id="form2">
<textarea name="msg" cols=40 rows=4 id="textarea2">
ここに textarea1 の文字列が表示される
</textarea>
</form>
----------------------------------------------

textarea1 の文字列を textarea2 に表示する、javascript の記述

idを指定してアクセスする記述
----------------------------------------------
document.forms["form2"].textarea2.value = document.forms["form1"].textarea1.value;
----------------------------------------------

こういう記述もある
----------------------------------------------
document.forms.form2.textarea2.value = document.forms.form1.textarea1.value;
----------------------------------------------

formは番号指定でも可能
----------------------------------------------
document.forms[1].textarea2.value = document.forms[0].textarea1.value;
----------------------------------------------

form の name で指定する方法
----------------------------------------------
<div>
<form id="form1" name="form_name1">
<textarea name="msg" cols=40 rows=4 id="textarea1">
この文字を textarea2 に表示したい
</textarea>
</form>
</div>

<div>
<form id="form2" name="form_name2">
<textarea name="msg" cols=40 rows=4 id="textarea2">
ここに textarea1 の文字列が表示される
</textarea>
</form>
----------------------------------------------

form の name で指定する場合、forms の記述は不要
----------------------------------------------
document.form_name2.textarea2.value = document.form_name1.textarea1.value;
----------------------------------------------

参考サイト

【Objective-C】文字列内の改行を削除する

文字列内の改行を削除する方法

改行された
文字列

↓↓↓↓↓

改行された文字列

------------------------------------
//改行区切りで1行ずつ配列に入れる
NSMutableArray *lines = [NSMutableArray array];
[selectedWord enumerateLinesUsingBlock:^(NSString *line, BOOL *stop) {
[lines addObject:line];
}];

//配列を連結
NSString *renketu_string = [lines componentsJoinedByString:@""];
NSLog(@"タイトルに表示する文字列:%@",renketu_string);
------------------------------------

参考ページ

【Xcode】TableViewでセルを選択したらセグエで画面遷移の設定

1.TableViewControllerから目的のViewへセグエでつなぐ

ストーリーボード上で行う。このとき注意すべきなのは、セグエをテーブルのセルから引っ張らないこと!TableViewController 上部の四角いボタンから目的のViewController へドラッグする。

2.セグエにIDを設定する

ストーリーボード上で新しいセグエを選択して、Attributes Inspector から ID を決める。「to○○ViewController」みたいな名前が分かりやすい。

3.実装ファイル(.m)に画面遷移の記述をする

------------------------------------------------------
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

[self performSegueWithIdentifier:@"セグエのID" sender:self];
}
------------------------------------------------------

参考ページ

【Xcode】TableViewのセルを二回タップしないと反応しない

TableViewのセルを一度タップしても反応しない。二度目以降は反応するという現象が起こった。

原因:

didSelectRowAtIndexPath を使用する場面で didDeselectRowAtIndexPath していた。

didDeselectRowAtIndexPath は、セルが解除されたタイミングで反応するイベント。

【Xcode】新しいViewController用の新しいクラスを作る

Object Library から 新しい View Controller をドラッグ&ドロップしたら、その View Controller に対する命令を記述するために、新しいクラスを作る必要がある。新しいクラスをつくると「新しいView Controller.h」と「新しいView Controller.m」のファイルが作成され、そこに命令文を記述していけばいい。

新しいクラスの作り方の手順。

1.ストーリーボードに View Controller を新規作成

ストーリーボードに View Controller オブジェクトをドラッグ&ドロップしてつくる。

2.新しいクラスを作る

「File」→「New」→「File...」でカスタムクラスを作る

3.新しいクラスと新しいViewControllerを関連付ける

ストーリーボードで新しくつくった View Controller を選択して、Identity Inspector の Cumtom Class から 先ほどつくったカスタムクラスを選択する。