ウェブ開発で遭遇した問題と経験

ウェブ開発で遭遇した問題と経験
<br />以下は開発中に遭遇した問題と、そこから得た経験です。デバッグに時間がかかりましたが、他の人が回り道をしなくて済むようにここに投稿します。
1. XMLファイルは可能な限りUTF-8でエンコードする必要があります。GB2312の一部の文字は保存できません。たとえば?保存できたとしても変換する必要があり、面倒です。UTF-8は国際標準にも準拠しています。
2. CSS では、:hover 疑似クラスは :visited の前に配置されると無効になります。
3. <a> タグに href 属性がない場合、:hover などのすべての CSS 疑似クラスは無効になります。

4. js ファイルでは、参照は document.wirte("<script language='javascript' src='" file "'></" "script>" の形式になり、ファイルの相対パスは js を参照する HTML のパスになります。
たとえば、a.htm が x\b.js を参照し、b.js が x\c.js を参照している場合、ファイルは b.js を基準とした直接パス c.js ではなく x\c.js である必要があります。ただし、この問題は CSS の @import および url() 参照には発生しません。5. ページでは、テーブルの幅が 100% に設定され、スクロール バーの右側に空白が残ることがあります。<body style="overflow:auto"> を設定してください。
6. よく使用される画像には、img タグを使用しないでください。<span><a> を使用し、CSS を使用して背景と幅と高さを指定します。動的な画像 (移動時に背景が変化するもの) の場合は、<a> を使用するのが最適です。追加のコードは必要ありません。疑似クラス :hover を使用するだけです。CSS を使用する利点は、すべての変更を一度に行うことができることです。これは、スキンを変更するアプリケーションでうまく使用できます。
7. @font-face {font-family:comic;src:url(http://valid_url/some_font_file.eot);}
ローカルで利用できないフォント名を定義し、<span style="font-family:comic;font-size:18pt>aa</span> を呼び出します。
8. CSSの一部
div { オーバーフロー: 非表示; テキストオーバーフロー: 省略記号; }
td { 垂直位置揃え : 中央; }
オーバーフローを強制的に発生させて省略記号の値を適用するには、作成者はオブジェクトの空白プロパティを nowrap に設定する必要があります。
改行の機会がない場合(たとえば、オブジェクト コンテナーの幅が狭く、適切な改行のない長いテキストがある場合)は、nowrap を適用しなくてもオーバーフローが発生する可能性があります。
省略記号の値を適用するには、このプロパティを非表示領域を持つオブジェクトに設定する必要があります。最善のオプションは、overflow プロパティを hidden に設定することです。
9. Firefox の document.createElement は、コンテンツ内の HTML タグをサポートしていません。また、innerText もサポートしていませんが、innerHTML はサポートしており、innerHTML を使用してそのコンテンツを指定できます。
10. .net コントロールの DropDownList の幅は Firefox では色付けされないので、style='width:10px;' を直接定義する必要があります。
11. Firefox の CSS カーソルはハンドをサポートしていないため、代わりにポインターを使用します。

12. iframe 内のスクロール バーは、iframe タグで style='overflow:hidden' を設定する必要があります。body のみに設定することはできません。そうしないと、Firefox で問題が発生します。
13. onpropertychange イベントでは、event.propertyName を使用してプロパティ変更イベントをフィルタリングすることに注意してください。このイベントを設定すると、onpropertychange プロパティが実際に変更されているため、自動的に 1 回実行されます。
14. js5.6 でサポートされる XSL のバージョンは比較的低く、ドキュメント機能はサポートされていません。

15. スライス関数は、配列のフラグメントを取得するために直接ループするよりも遅くなります。
16. nextSibling が次のオブジェクトを取得する場合、2 つのノード間にスペースがあってはならないことに注意することが重要です。そうしないと、正しいオブジェクトを取得できない可能性が高くなります。
17. CreateTextFile に中国語が含まれている場合、3 番目のパラメータを true に指定する必要があります。そうしないと、中国語を書き込むことができず、Write が呼び出されたときにエラーが発生します。
18. FSO は utf-8 形式をサポートしていないため、中国語のテキストを保存するときは fso ではなく ADODB.stream を使用します。

<<:  複数の条件を持つ MySQL クエリ メソッド

>>:  WeChatミニプログラムが星評価を実装

推薦する

LDAP ユーザー認証を使用するように Linux を構成する方法

私は CentOS に実装された LDAP ユーザー管理を使用しています。これはインターネット上のほ...

バントリストコンポーネントをスクロールしても、スクロールバーの位置は保持されます。

バントリストコンポーネントをスクロールするときに、スクロールバーの位置が保持されます。これは、kee...

HTML タグ: サブタグと sup タグ

今日はあまり使わないHTMLタグ「subタグ」と「supタグ」を紹介します。関連記事: HTML タ...

ウェブページレイアウトデザインのシンプルな原則

この記事では、Web ページ レイアウト デザインのいくつかの簡単な原則をまとめ、Web ページ デ...

Msyql トランザクション分離について知っておくべきこと

トランザクションとは何ですか?トランザクションは、データベース管理システムの実行プロセスにおける論理...

XHTML Web ページ チュートリアル

<br />この記事は主に、初心者にXHTMLの基本知識と、XHTMLとHTMLの違いを...

マージンのマージの問題を解決する

1. 兄弟要素の余白を結合する効果は次のようになります: (2 つの間の間隔は 150 ピクセルでは...

LinuxでPythonの組み込みバージョンを削除する手順の詳細な説明

大きな落とし穴、Linuxシステムに付属するPythonのバージョンを簡単に削除しないでください1....

CSS の両端揃えを実現する div+css レイアウトの 4 つの方法の概要

2 端揃えを実現する div+css レイアウトは、Web ページの組版でよく使用されます。この記事...

ページのレンダリング時間を短縮してページの実行速度を速めます

ブラウザでのページのレンダリング時間をできるだけ短縮するにはどうすればよいでしょうか? この記事は、...

Nginx Rewriteモジュールを使用するいくつかのシナリオ

アプリケーションシナリオ1: ドメイン名ベースのリダイレクト会社の古いドメイン名は www.accp...

MySQL におけるさまざまな一般的な結合テーブルクエリの例の概要

この記事では、例を使用して、MySQL のさまざまな一般的な結合テーブルクエリについて説明します。ご...

Dockerを使用してElasticsearchクラスターを素早くデプロイする方法

この記事では、 Dockerコンテナ ( docker-composeを使用してオーケストレーション...

JavaScriptでシンプルなスクロールウィンドウを実装する

この記事では、スクロールウィンドウを実装するためのJavaScriptの具体的なコードを参考までに紹...

Vue は Ctrip のカルーセル効果を模倣します (スライディング カルーセル、以下は高度に適応)

まずケースを見てみましょう。vue+swiper を使用して実装します。スライドの高さが異なる場合、...