これがなぜ機能しないのか、私は完全に困惑しています。 HTMLファイルは、両方が同じディレクトリにあるにもかかわらず、何らかの理由でCSSをロードできないようです。何が問題なのでしょうか?
index.html
<!DOCTYPE html>
<html>
<head>
<title>Home Page</title>
<link rel="stylesheet" href="style.css" media="screen" />
<meta name="viewport" content="width=1100">
</head>
<body>
<div id="main"> Hello </div>
</body>
</html>
style.css
body{
background-color: #F9F9F9;
background-image: url(images/bg3.png);
background-position: center top;
background-repeat: repeat;
text-shadow: #FFFFFF 0px 1px 0px;
font-family: "Georgia", "Times", serif;
-webkit-font-smoothing: antialiased;
}
a{
text-decoration: none;
}
#main{
margin: 50px auto 50px auto;
width: 1000px;
min-height: 500px;
padding: 0px 20px 0px 20px;
}
上記は機能しません。ただし、index.htmlにCSSをインラインで追加しても正常に機能します
<!DOCTYPE html>
<html>
<head>
<title>Homepage</title>
<style type="text/css" media="screen">
body {
background-color: #F9F9F9;
background-image: url(images/bg3.png);
background-position: center top;
background-repeat: repeat;
text-shadow: #FFFFFF 0px 1px 0px;
font-family: "Georgia", "Times", serif;
-webkit-font-smoothing: antialiased;
}
a {
text-decoration: none;
}
#main {
margin: 50px auto 50px auto;
width: 1000px;
min-height: 500px;
padding: 0px 20px 0px 20px;
}
</style>
<meta name="viewport" content="width=1100">
</head>
<body>
<div id="main"> Hello </div>
</body>
</html>
追加する
type="text/css"
リンクタグに
最新のブラウザではこれはもはや必要ではないかもしれませんが、 HTML4仕様 はこれを必須属性として宣言しました。
タイプ=コンテンツタイプ[CI]
この属性は、要素のコンテンツのスタイルシート言語を指定し、デフォルトのスタイルシート言語をオーバーライドします。スタイルシート言語は、コンテンツタイプ(「text/css」など)として指定されます。 著者はこの属性の値を提供する必要があります。この属性にはデフォルト値はありません。
同じディレクトリ内の両方のファイルを確認してから、これを試してください
<link href="style.css" rel="stylesheet" type="text/css"/>
type="text/css"
を追加する必要があります。また、href="./style.css"
で現在のディレクトリを指定する.
を指定することもできます。
あなたが言ったように、あなたの両方のファイルは同じディレクトリにあります。 1. index.htmlおよび2. style.css
私はあなたのコードをコピーし、ローカルマシンで実行しましたが、問題なく動作します。
私によると、ブラウザはファイルを更新していないので、mac CMD + RのウィンドウでCTRL + F5を押してページ全体を更新/再ロードできます.
それでも問題が解決しない場合は、Firefoxの firebug ツールを使用してテストできます。
IE8とGoogleの場合Chrome F12を押すと、開発者ツールがポップアップ表示され、Htmlとcssを確認できます。
それでも問題がありましたらコメントしてください。
私はこの同じ問題に苦しんでいます(Ubuntu 16.04、Bluefishエディター、FireFox、Google Chrome。
解決策:Chrome「設定>詳細設定>閲覧データの消去」、Firefoxで「メニュー画像を開く」右上のツールバー「設定」>「詳細設定」で、この画像を探しますメニュー:[キャッシュされたWebコンテンツ]ボタン[今すぐクリア]をクリックします。ブラウザは.cssファイルをキャッシュし、変更されていない場合、通常はリロードされません。 .cssファイルに問題がない限り、Peace、Stan
HTML5で必要なのはrel
だけでなく、type
だけです。
<link href="custom.css" rel="stylesheet"></link>
これを試すことができます:
<link href="style.css" rel="stylesheet" type="text/css" media="screen, projection"/>
ブラウザが実際にリクエストを行い、404を返さないことを確認してください。
CssファイルはUTF-8として定義する必要があります。これをcssファイルの最初の行に入れてください。
@charset "UTF-8";
<link href="style.css" rel="stylesheet" type="text/css"/>
まあ、私もまったく同じ質問をしました。そして、私のCSS
リンクですべてが大丈夫でした。 なぜhtmlがCSS
ファイルをロードしなかったのかは、その位置が原因でした(私の場合のように)。
さて、カスタムCSS
が間違った場所で定義されていたため、ウェブページがそれにアクセスしていませんでした。次に、CSSリンクをテストして別の場所に配置し、うまくいきました。
私はどこに置くべきか読んでいたcustom CSS
Bootstrap CSS
したので、ロードしていませんでした。それで、私は位置を変えて、それは働きました。
お役に立てれば。
ありがとう!
同様の問題があり、それを解決するさまざまな方法をテストしました。
最終的に、.cssファイルがあった間にindex.htmファイルが "Unicode"エンコード(ページでペルシア語文字を使用するため)で保存されていたことを理解しました "ANSI"形式で保存されました。
メモ帳で.cssファイルのエンコードを "Unicode"に変更すると、問題は解決しました。
次の手順を使用して、非常に簡単な.CSSファイルをロードします。
<link rel="stylesheet" href="path_here.css">
注:1-> rel属性に「スタイルシート」を書くことを忘れないでください。 2->正しいパスを使用します(例:D:\ folder1\forlder2\folder3\file.css ")
これで、ディレクトリのどこにいても、.cssファイルを指定したとおりのパスでロードできます。
よろしく!ムハンマド・マジッド。
さて、私は今日この問題に直面しました。
<script type="text/javascript" src="testWeb/scripts/inline.31e1fb380eb7cf3d75b1.bundle.js"></script>
ここで、testWeb
は、htdocディレクトリ内のルートアプリフォルダです。 Windows(xamppを使用)または/ var/www/htmlディレクトリで、何らかの理由でまだわかりません
<script type="text/javascript" src="scripts/inline.31e1fb380eb7cf3d75b1.bundle.js"></script>
htmlインデックスファイルが同じディレクトリのスクリプトフォルダーの横にあるときにロードされません。
また、link
タグのmedia
属性に有効な値があることを確認してください。私の場合は、WordPress CMSを使用し、ブール値true
をメディアに渡しました。ので、そのように示した。
<link rel="stylesheet" href="./style.css" media="1">
それがエラーを与えていた理由です。 CSSスタイルの読み込みが依存する3つの主要な属性があります。
link
タグの関係rel
属性の値がcssファイルに対して有効でなければならないことを確認してください。つまり、stylesheet
です。link
タグのターゲットhref
属性の値が、有効な既存のカスケードスタイルシートファイルを指している必要があることを確認してください。あなたの場合のように、./style.css
です。href
属性の値には絶対パスと相対パスの両方を使用できることに注意してください。つまり、ファイルstyle.css
がルートに存在する場合、つまり/
の場合、href
属性の値に/style.css
を使用することも、ファイルが同じ場所に存在する場合もHTMLファイルが存在するディレクトリでは、link
タグのhref
属性の値の値として./style.css
を使用できます。link
タグのmedia
属性が次のいずれかであることを確認してください。all
キーワードをmedia
属性の値として使用できます。screen
属性の値としてmedia
を使用できます。print
キーワードをmedia
属性の値として使用できます。 Print Screenボタンを押して画面の画像をキャプチャするときにも適用されることに注意してください。speech
キーワードを「メディア属性の値」として使用できます。これらのルールに従うことにより、link
タグのHTML構造ができます。
私は同じ問題に直面していた、
ChromeとFirefoxですが、Internet Explorerではすべてが正常に機能していました。CSSファイルをUTF-8にすると、Chromeで機能することがわかりました。
これは「特別な」ケースかもしれませんが、次のコードをいじっていました。
ForceType application/x-httpd-php SetHandler application/x-httpd-php
同様の問題が発生した場合の無拡張ファイル処理の簡単なテストとして。
すべてではありませんが、一部のphpファイルはその後cssファイルをphpとして処理し、cssを正常にロードしましたがcssとして処理しなかったため、f12スタイルエディターをチェックするときにルールが実行されませんでした。
おそらく、ここで他の誰かと同様のことが発生する可能性があり、このヒントが役立つ可能性があります。
私は同様の問題を抱えていましたが、Style.cssからstyle.cssへの変更を解決しましたこの名前の大文字「S」の変更により、404エラーがスローされていましたこのエラーがスローされていました。クラウドにアップロードした後、これがすべてチェックされていることを確認してください