🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

HTML

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

CSS

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

Q&A

解決済

1回答

535閲覧

htmlファイルが別々の場合、cssもファイルを分けるべきか

tonkatsu00

総合スコア1

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

HTML

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

CSS

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

0グッド

0クリップ

投稿2021/01/27 07:27

編集2021/01/27 08:05

質問

railsで簡単なtodoアプリを作成しています。
タスクの新規追加ページでviewを作った後、編集ページでは新規投稿ページのhamlをコピペしたものを使っているのですが、scssのファイルでは、new.scssとedit.scssで分けた方がいいですか?それともnew_edit.scssなどというファイルを作って新規追加ページと編集ページを一つのscssファイルで管理しても大丈夫なのでしょうか?

該当のソース

新規投稿ページ

haml

1.new-task 2 = form_for @post do |f| 3 .task 4 %p タスク 5 = f.text_field :title, class: "task__form" 6 .date 7 %p 期日 8 = f.date_select :due_date, class: "date__deadline" 9 .memo 10 %p メモ 11 = f.text_area :memo, class: "memo__form" 12 .add-btn 13 = f.submit "投稿する", class: "task-btn"

編集ページ

haml

1.new-task 2 = form_for @post do |f| 3 .task 4 %p.task__paragraph1 タスク 5 = f.text_field :title, class: "task__form" 6 .date 7 %p.date__paragraph2 期日 8 = f.date_select :due_date, class: "date__deadline" 9 -# .sub-task 10 -# %p.sub-task__paragraph3 サブタスク 11 -# = f.fields_for :sub_tasks do |t| 12 -# = t.text_field :task, class: "sub-task__form" 13 .memo 14 %p.memo__paragraph4 メモ 15 = f.text_area :memo, class: "memo__form" 16 .add-btn 17 = f.submit "変更する", class: "task-btn"

新規投稿ページと編集ページ

scss

1.new-task { 2 margin: 30px 25%; 3 .task { 4 padding-bottom: 30px; 5 &__form { 6 width: 700px; 7 height: 40px; 8 font-size: 1rem; 9 } 10 } 11 .date { 12 padding-bottom: 30px; 13 } 14 .memo { 15 padding-bottom: 30px; 16 &__form { 17 text-align: initial; 18 width: 703px; 19 height: 300px; 20 font-size: 1rem; 21 } 22 } 23 .add-btn { 24 text-align: center; 25 .task-btn { 26 display: inline-block; 27 width: 200px; 28 line-height: 48px; 29 background: #3CCACE; 30 border: 1px solid #3CCACE; 31 color: #fff; 32 border-radius: 100px; 33 cursor: pointer; 34 font-size: 20px; 35 font-weight: bold; 36 } 37 } 38} 39 40.task-btn:hover { 41 opacity: .6; 42} 43 44p { 45 font-size: 20px; 46}

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

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

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

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

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

miyabi_takatsuk

2021/01/27 07:36 編集

質問者さんの記載のものは、 HTML → haml(テンプレート構文) CSS → SCSS(メタ言語) となりますので、覚えときましょう。 (上記各左項のものを、効率よく機能的に記述するためのものが、各右項となる) チームでやっていますか? もしそうなら、チームのメンバーと相談してください、としか言いようがないです。 個人でやっているなら、思うようにやったらいい、としか言いようがないかと・・・。
tonkatsu00

2021/01/27 07:45

なるほど!直しておきます。 個人でやっています。基本的には個人やチームで決めることなんですね。 回答ありがとうございました。
miyabi_takatsuk

2021/01/27 07:50

ここは回答ではなく質問修正依頼のコメント蘭になります。 機能面に関しても含めて、 m.ts10806さんが回答されていますので、 ご覧ください。
hentaiman

2021/01/27 07:55

ガチガチの1:1の関係だったらいっそhtml+cssを分けずにまとめてしまっても良いかもしれないですね。
guest

回答1

0

ベストアンサー

CSSに限らず、同じ指定のコードをあちこちに持つのはメンテナンス性を損なうので、よほどのそのページにしか使わないような設定や処理をしない限りは共通でいいです。
それに1つのファイルに書いてたとしても単に使わない設定があるというだけで、それが何百行何千行にわたるのでなければ、個別の設定も共通に持っておいて差し支えないかと思います。

「ユーザー用と管理者用」など機能がガッツリ違う場合は分けた方が良いです。
役割分担の観点から考えてみてください。

投稿2021/01/27 07:32

編集2021/01/27 07:37
m.ts10806

総合スコア80875

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

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

tonkatsu00

2021/01/27 07:51

確かに、同じ内容ファイルがあっても意味ないですよね。 回答ありがとうございます。
m.ts10806

2021/01/27 07:53

そこも要件次第というか、仕事でしているなら「ルール次第」というか。 一般的な考え方と「決め」の問題は必ずしも一致しませんので。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問