使用HTML和CSS構建技術文件網站
學習如何使用HTML和CSS設計技術文件網站。網站佈局專注於最佳化程式設計文件領域的內容組織,以提供使用者友好的導航。
為了實現非技術的外觀和感覺,HTML用於內容佈局,CSS用於構建和呈現此使用者友好的文件。
設計響應式技術文件網站的關鍵步驟
實現方法包含幾個關鍵點,這些關鍵點有助於網頁的整體設計和功能:
- HTML結構 − HTML文件的結構及其劃分為各個部分使用語義HTML元素;例如<header>、<nav>、<main>、<section>等。
- 導航欄 − 左側始終存在垂直導航欄,必須標記為#navbar,這對於瀏覽文件非常有用,可以帶來更好的體驗。學習:如何建立響應式導航欄。
- 響應式設計 − 為了使網頁可在不同裝置上訪問,原始碼中將使用響應式設計。
- 使用CSS進行樣式設定 − 主體背景、字型型別、顏色和文件中使用的空格是CSS檔案構成精美外觀的一些方面。
- 程式碼高亮 − 程式碼片段插入到帶樣式的<code>標籤中,增強了內容理解,併為文件中的示例提供了特殊的樣式。
- 列表組織 − 新概念也使用專案符號<ul>和<li>編寫,以使使用者能夠輕鬆識別關鍵點。
- 配色方案 − 使用配色方案可在文字及其背景之間實現良好的對比度,以便於閱讀且賞心悅目。
- 懸停效果 − 將效果應用於導航欄中包含的連結,以使選單具有互動性,並在使用者瀏覽選單時顯示效果。
- 輔助功能考慮 − 在HTML中使用正確的標籤和結構,以便螢幕閱讀器能夠儘可能輕鬆地瀏覽內容。
- 程式碼註釋 − 程式碼中包含註釋,以便後來的開發者能夠理解構建程式的不同元件時使用的概念。
設計技術文件網站的HTML和CSS程式碼
這是完整的程式碼,您可以複製並將其用於您的設計中,以建立一個精美且有吸引力的技術文件網頁:
HTML檔案
<!DOCTYPE html> <html lang="en"> <head> <link rel="stylesheet" href="style.css"> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>C++ Documentation</title> </head> <body> <div class="main-body"> <nav id="navbar"> <header>Documentation Menu</header> <a href="#Intro" class="nav-link">What is C++</a> <a href="#Object" class="nav-link">Objects and Classes</a> <a href="#Inheritance" class="nav-link">Inheritance</a> <a href="#Polymorphism" class="nav-link">Polymorphism</a> <a href="#Abstraction" class="nav-link">Abstraction</a> <a href="#Encapsulation" class="nav-link">Encapsulation</a> </nav> <main id="main-doc"> <section class="main-section" id="Intro"> <header>What is C++?</header> <p>C++ is a general purpose programming language and widely used now a days ' for competitive programming. It has imperative, object-oriented and generic programming features. C++ runs on lots of platform like Windows, Linux, Unix, Mac etc. C++ is an efficient and powerful language and finds wide use in various GUI platforms, 3D graphics and real-time simulations. Because of the inclusion of rich function libraries, working in C++ becomes simpler and convenient than C. Being object-oriented programming like Java, C++ provides the support of inheritance, polymorphism, encapsulation, etc. Unlike C, C++ allows exception handling and function overloading..</p> <p>The “Hello World” program is the first step towards learning any programming language...</p> <code> #include<iostream> <br> using namespace std; <br> int main() <br> { <br> cout << "Hello World"; <br> return 0; <br> } </code> <p>C++ is an Object-Oriented Programming Language. The main pillars of Object-Oriented Programming are:</p> <ul> <li>Objects and Classes</li> <li>Inheritance</li> <li>Polymorphism</li> <li>Abstraction</li> <li>Encapsulation</li> </ul> </section> <section class="main-section" id="Object"> <header>Objects and Classes</header> <p> Object-oriented programming – As the name suggests uses objects in programming. Object-oriented programming aims to implement real-world entities like inheritance, hiding, polymorphism, etc in programming. The main aim of OOP is to bind together the data and the functions that operate on them so that no other part of the code can access this data except that function.</p> <p><b>Object : </b>An Object is an identifiable entity with some characteristics and behavior. An Object is an instance of a Class. When a class is defined, no memory is allocated but when it is instantiated (i.e. an object is created) memory is allocated. <br> <b>Class : </b>The building block of C++ that leads to Object-Oriented programming is a Class. It is a user-defined data type, which holds its own data members and member functions, which can be accessed & used by creating an instance of that class. A class is like a blueprint for an object. For Example: Consider the Class of Cars. There may be many cars with different names and brand but all of them will share some common properties like all of them will have 4 wheels, Speed Limit, Mileage range etc. So here, Car is the class and wheels, speed limits, mileage are their properties.</p> </section> <section class="main-section" id="Inheritance"> <header>Inheritance</header> <p>The capability of a class to derive properties and characteristics from another class is called Inheritance. Inheritance is one of the most important feature of Object Oriented Programming. Sub Class: The class that inherits properties from another class is called Sub class or Derived Class. Super Class: The class whose properties are inherited by sub class is called Base Class or Super class. Using inheritance, we have to write the functions only one time instead of three times as we have inherited rest of the three classes from base class(Vehicle).</p> <p><b>Mode of Inheritance : </b><br><br> <b>Public Mode : </b>If we derive a sub class from a public base class. Then the public member of the base class will become public in the derived class and protected members of the base class will become protected in derived class. <br><br> <b>Protected Mode : </b>If we derive a sub class from a Protected base class. Then both public member and protected members of the base class will become protected in derived class. <br><br> <b>Private Mode : </b>If we derive a sub class from a Private base class. Then both public member and protected members of the base class will become Private in derived class. <br><br> <b>Types of Inheritance in C++ : </b> <br><br><br> <b>Single Inheritance :</b> In single inheritance, a class is allowed to inherit from only one class. i.e. one sub class is inherited by one base class only. <br><br> <b>Multiple Inheritance :</b> Multiple Inheritance is a feature of C++ where a class can inherit from more than one classes. i.e one sub class is inherited from more than one base classes. <br><br> <b>Multilevel Inheritance :</b> In this type of inheritance, a derived class is created from another derived class. <br><br> <b>Hieratical Inheritance :</b> In this type of inheritance, more than one sub class is inherited from a single base class i.e. more than one derived class is created from a single base class. <br><br> <b>Hybrid (Virtual) Inheritance :</b> Hybrid Inheritance is implemented by combining more than one type of inheritance. For example: Combining Hierarchical inheritance and Multiple Inheritance.</p> </section> <section class="main-section" id="Polymorphism"> <header>Polymorphism</header> <p>The word polymorphism means having many forms. In simple words, we can define polymorphism as the ability of a message to be displayed in more than one form. A real-life example of polymorphism, a person at the same time can have different characteristics. Like a man at the same time is a father, a husband, an employee. So the same person posses different behavior in different situations. This is called polymorphism. Polymorphism is considered as one of the important features of Object Oriented Programming. <br> <b>In C++ polymorphism is mainly divided into two types:</b> <br> 1. Compile time Polymorphism<br> 2. Runtime Polymorphism</p> <p>Compile time polymorphism: This type of polymorphism is achieved by function overloading or operator overloading. <br> Runtime polymorphism: This type of polymorphism is achieved by Function Overriding.</p> </section> <section class="main-section" id="Abstraction"> <header>Abstraction</header> <p>Data abstraction is one of the most essential and important feature of object oriented programming in C++. Abstraction means displaying only essential information and hiding the details. Data abstraction refers to providing only essential information about the data to the outside world, hiding the background details or implementation. <br> Consider a real life example of a man driving a car. The man only knows that pressing the accelerators will increase the speed of car or applying brakes will stop the car but he does not know about how on pressing accelerator the speed is actually increasing, he does not know about the inner mechanism of the car or the implementation of accelerator, brakes etc in the car. This is what abstraction is.</p> <p><b>Abstraction using Classes:</b> We can implement Abstraction in C++ using classes. Class helps us to group data members and member functions using available access specifiers. A Class can decide which data member will be visible to outside world and which is not. <br> <b>Abstraction in Header files:</b> One more type of abstraction in C++ can be header files. For example, consider the pow() method present in math.h header file. Whenever we need to calculate power of a number, we simply call the function pow() present in the math.h header file and pass the numbers as arguments without knowing the underlying algorithm according to which the function is actually calculating power of numbers. <br><br><b>Advantages of Data Abstraction:</b><br> 1. Helps the user to avoid writing the low level code.<br> 2. Avoids code duplication and increases reusability.<br> 3. Can change internal implementation of class independently without affecting the user.<br> 4. Helps to increase security of an application or program as only important details are provided to the user.</p> </section> <section class="main-section" id="Encapsulation"> <header>Encapsulation</header> <p>In normal terms Encapsulation is defined as wrapping up of data and information under a single unit. In Object Oriented Programming, Encapsulation is defined as binding together the data and the functions that manipulates them. Consider a real life example of encapsulation, in a company there are different sections like the accounts section, finance section, sales section etc. The finance section handles all the financial transactions and keep records of all the data related to finance. Similarly the sales section handles all the sales related activities and keep records of all the sales. Now there may arise a situation when for some reason an official from finance section needs all the data about sales in a particular month. In this case, he is not allowed to directly access the data of sales section. He will first have to contact some other officer in the sales section and then request him to give the particular data. This is what encapsulation is. Here the data of sales section and the employees that can manipulate them are wrapped under a single name “sales section”.</p> <p>Encapsulation also lead to data abstraction or hiding. As using encapsulation also hides the data. In the above example the data of any of the section like sales, finance or accounts is hidden from any other section.<br> In C++ encapsulation can be implemented using Class and access modifiers.</p> </section> </main> </div> </body> </html>
CSS檔案 (style.css)
/* Background and font styling */ body { font-family: 'Arial', sans-serif; margin: 0; padding: 0; background: url('background.jpg') no-repeat center center fixed; background-size: cover; color: #333; line-height: 1.6; } /* Main body container */ .main-body { display: flex; width: 100%; min-height: 100vh; background-color: rgba(255, 255, 255, 0.9); /* For readability over background */ box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); } /* Navbar styling */ #navbar { width: 250px; padding: 20px; background-color: #223140; color: white; display: flex; flex-direction: column; position: fixed; top: 0; left: 0; height: 100%; box-shadow: 3px 0px 5px rgba(0, 0, 0, 0.2); } #navbar header { font-size: 24px; margin-bottom: 20px; text-align: center; } .nav-link { color: #ecf0f1; text-decoration: none; padding: 10px 0; transition: background-color 0.3s ease; } .nav-link:hover { background-color: #070707; padding-left: 10px; } /* Main content styling */ #main-doc { margin-left: 250px; padding: 40px; width: calc(100% - 250px); background-color: #ecf0f1; } .main-section { margin-bottom: 40px; } .main-section header { font-size: 28px; margin-bottom: 15px; color: #16496a; } p { font-size: 18px; line-height: 1.8; } /* Styling for code blocks */ code { background-color: #000000; color: white; display: block; padding: 10px; margin: 10px 0; border-radius: 4px; font-size: 16px; } /* List Styling */ ul { margin-left: 20px; font-size: 18px; } ul li { margin-bottom: 10px; } /* Enhancing links within the content */ a { color: #036cb2; text-decoration: none; } a:hover { text-decoration: underline; }
輸出
當您執行上述HTML程式碼以及CSS時,您將看到如下所示的網頁:
功能
此實現的結果是有用的規範化和樣式化的HTML,它可以正確且詳細地呈現C++語言的文件。使用者可以期待以下功能:
- 它具有左側導航欄,可用於導航到站點的不同部分,例如“什麼是C++”、“物件和類”、“繼承”等。
- 網站的主體部分提供了所有重要的計算機概念和C++解釋,並配有清晰易讀的程式碼。
- 當文字佈局應具有吸引力時,應選擇合適的顏色組合和字型樣式。
廣告