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

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

新規登録して質問してみよう
ただいま回答率
85.35%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Q&A

解決済

1回答

635閲覧

[Vue] Build後、bodyのbackground-colorが#fffになってしまう

DaisukeMori

総合スコア226

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

0グッド

0クリップ

投稿2020/02/13 16:01

編集2020/02/14 14:17

環境

Vue CLI 2x

現象

npm run dev時

vue

1body{ background: #F4EFE7; }

ローカル環境
イメージ説明

npm run build時(firebaseデプロイ)

vue

1body{ background-color: #fff; }

不明: 「#F4EFE7」の方のスタイルより#fffのbodyスタイルが後に読み込まれてしまっている
あと<a>タグのスタイルも変わってしまっています。

イメージ説明

App.vue

vue

1<template> 2 <div id="app"> 3 <div class="header"> 4 <router-link to="/"> 5 <div class="logo-title"> 6 <div class="font-12">Designer</div> 7 <div class="font-20">Daisuke Mori</div> 8 </div> 9 </router-link> 10 <ul class="font-15"> 11 <li><router-link to="/">Top</router-link></li> 12 <li><router-link to="/product">Works</router-link></li> 13 </ul> 14 </div> 15 16 <router-view /> 17 <Form /> 18 19 <div class="footer"> 20 <p id="page-top"><a href="#wrap"><img src="@/assets/img/pagetop.png"></a></p> 21 <div class="detail"> 22 <div class="font-20">Detail</div> 23 <div class="font-13">Adobe Illustrator / Photoshop / Indesign / XD / AfterEffects</div> 24 <div class="font-13">Web HTML / CSS / PHP / Laravel / CakePHP / Javascript / Vue / React</div> 25 <div class="font-13">Mobile React Native</div> 26 </div> 27 Copyright© 2020 Dai Portfolio All rights reserved. 28 </div> 29 </div> 30</template> 31 32<script> 33 // 認証関連 34 import firebase from 'firebase' 35 import Form from '@/components/Form.vue' 36 37 export default { 38 name: 'App', 39 components: { Form }, 40 mounted: function() { 41 // fadein 42 $(window).scroll(function (){ 43 $('.fadein').each(function(){ 44 let targetElement = $(this).offset().top; 45 let scroll = $(window).scrollTop(); 46 let windowHeight = $(window).height(); 47 if (scroll > targetElement - windowHeight + 200){ 48 $(this).css('opacity','1'); 49 $(this).css('transform','translateY(0)'); 50 } 51 }); 52 }); 53 // ページTOPに戻る 54 let topBtn = $('#page-top'); 55 topBtn.hide(); 56 //スクロールが100に達したらボタン表示 57 $(window).scroll(function () { 58 if ($(this).scrollTop() > 100) { 59 topBtn.fadeIn(); 60 } else { 61 topBtn.fadeOut(); 62 } 63 }); 64 //スクロールしてトップ 65 topBtn.click(function () { 66 $('body,html').animate({ 67 scrollTop: 0 68 }, 500); 69 return false; 70 }); 71 } 72 } 73</script> 74 75<style> 76 @import url('https://fonts.googleapis.com/css?family=Parisienne&display=swap'); 77 @import url('https://fonts.googleapis.com/css?family=PT+Serif:400i|Parisienne&display=swap'); 78 /* font-family: 'Parisienne', cursive; */ 79 /* font-family: 'PT Serif', serif; */ 80 * { 81 font-family: 'PT Serif', serif; 82 margin: 0; 83 padding: 0; 84 box-sizing: border-box; 85 } 86 body, html { 87 background: #F4EFE7; 88 } 89 /* フォントサイズ定義 */ 90 .font-12 { 91 font-size: 12px; 92 } 93 .font-13 { 94 font-size: 13px; 95 } 96 .font-15 { 97 font-size: 15px; 98 } 99 .font-18 { 100 font-size: 18px; 101 } 102 .font-20 { 103 font-size: 20px; 104 } 105 .font-23 { 106 font-size: 23px; 107 } 108 .font-25 { 109 font-size: 25px; 110 } 111 .font-30 { 112 font-size: 30px; 113 } 114 .fadein { 115 opacity : 0; 116 transform: translateY(20px); 117 transition: all 1s; 118 } 119 #page-top img { 120 display: block; 121 width: 50px; 122 height: 50px; 123 font-size: 15px; 124 color: #fff; 125 text-align: center; 126 text-decoration: none; 127 transition: .5s; 128 right: 50px; 129 bottom: 50px; 130 position: fixed; 131 } 132 #page-top a:hover { 133 opacity: .5; 134 } 135 h1, h2 { 136 font-family: 'Parisienne', cursive; 137 font-weight: normal; 138 margin: 0 0 15px 0; 139 } 140 a { 141 text-decoration: none; 142 color: #312312; 143 } 144 ul li { 145 list-style: none; 146 } 147 .header { 148 display: flex; 149 align-items: center; 150 justify-content: space-between; 151 width: 80%; 152 height: 90px; 153 margin: 0 auto; 154 padding: 30px; 155 background: #D6C6B4; 156 } 157 .header .logo-title { 158 line-height: 1.25em; 159 } 160 .error { 161 color: #ff7bb6; 162 } 163 .header ul li { 164 display: inline-block; 165 margin: 15px 0 0 10px; 166 } 167 .router-link-exact-active { 168 color: #312312; 169 } 170 .container { 171 text-align: center; 172 width: 100%; 173 margin: 75px auto 50px; 174 } 175 .footer { 176 text-align: center; 177 font-size: 10px; 178 margin: 0 0 30px 0; 179 } 180 .footer .detail { 181 margin: 0 0 30px 0; 182 } 183</style>

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

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

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

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

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

shgtkshruch

2020/02/14 08:42 編集

ProductList.vue というファイルがあると思うのですが、そのファイルのコードも貼っていただけますか? また、ローカル環境とFirabseで開いている画面が異なる(ルーティングが違う)ように見えますが、ローカル環境と同じ画面をFirabaseで開いてもbodyのbackground-colorは#fffになっていますか?
DaisukeMori

2020/02/14 08:58

すみません。ページをローカルと同じページにしましたので よろしくお願いします。
shgtkshruch

2020/02/14 11:25

bodyにbackground-color:#fffが設定されているのは、ご自身で定義したスタイルでしょうか?(それともライブラリ?) もしわかるのであれば、このスタイルを定義したファイル名とそのコードがあるともう少し調査できるかもしれません。
DaisukeMori

2020/02/14 14:18

子コンポーネントまで記入しようとすると文字オーバーになるため親コンポーネントのApp.vue載せました。
guest

回答1

0

自己解決

App.vueに定義したスタイルがbuild時に何らかの原因で書き換わってしまうことは
まだ不明ですが、Vueフォルダのルート直下にあるindex.htmlにスタイルを直書きすれば行けるのではと仮説を立てて試しにこちらで定義してみたら無事スタイルが適用されました。

/index.html

html

1<!DOCTYPE html> 2<html> 3 <head> 4 <meta charset="utf-8"> 5 <meta name="viewport" content="width=device-width,initial-scale=1.0"> 6 <title>vue-basic</title> 7 </head> 8 <body> 9 <div id="app"></div> 10 <!-- built files will be auto injected --> 11 12 <!-- こちらにスタイルを直書き --> 13 <style> 14 body { 15 background: #F4EFE7; 16 } 17 a { 18 text-decoration: none; 19 color: #312312; 20 } 21 </style> 22 </body> 23</html> 24

投稿2020/02/14 18:12

DaisukeMori

総合スコア226

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問