Bạn cần một ngôn ngữ phía máy chủ. Tôi đã làm một số nghiên cứu về điều này trước đây. CSS không cho phép bạn làm điều này và mặc dù bạn có thể sử dụng iFrame nhưng nó không thực sự là công cụ được khuyên dùng nhất. Vì vậy, về mặt tiêu chuẩn, bạn nên sử dụng ngôn ngữ phía máy chủ hoặc cách khác, bạn có thể sử dụng một CMS thực hiện tất cả điều này cho bạn
Làm điều này bằng tay là khủng khiếp, tin tôi đi. Tôi đã làm điều đó một lần trên một trang web và nó nhanh chóng trở nên không thể quản lý được. Làm thế nào lớn là trang web đề xuất của bạn? . Chà, dù sao cũng không dành cho tôi
Thí dụ
Một tiêu đề cho một
AboutSau đó, trong
5, thêm tập lệnh
6 và
5 ngay phía trên phần tử
8const template = document.getElementById['welcome-msg'];
document.body.appendChild[template.content];
0chỉ mục. htmlVà thành phần tiêu đề có thể tái sử dụng của bạn sẽ được hiển thị trên trang
About#1. Liên kết đến Phông chữ Tuyệt vời trong Thành phần của bạn
Cách đơn giản nhất để Font Awesome hoạt động trong thành phần Shadow DOM của bạn là thêm một
class Header extends HTMLElement {
constructor[] {
super[];
}
connectedCallback[] {
this.innerHTML = `
nav {
height: 40px;
display: flex;
align-items: center;
justify-content: center;
background-color: #0a0a23;
}
ul {
padding: 0;
}
a {
font-weight: 700;
margin: 0 25px;
color: #fff;
text-decoration: none;
}
a:hover {
padding-bottom: 5px;
box-shadow: inset 0 -2px 0 0 #fff;
}
- About
- Work
- Contact
`;
}
}
customElements.define['header-component', Header];
1 vào nó trong chính thành phần đóconst template = document.getElementById['welcome-msg'];
document.body.appendChild[template.content];
8thành phần/chân trang. jsMột điều cần lưu ý là, mặc dù có vẻ như bạn đang khiến trình duyệt tải Font Awesome hai lần [một lần cho DOM chính và một lần nữa cho thành phần], các trình duyệt đủ thông minh để không tìm nạp lại cùng một tài nguyên
Đây là tab mạng cho thấy rằng Chrome chỉ tải xuống Phông chữ tuyệt vời một lần
Aboutclass Header extends HTMLElement {
constructor[] {
super[];
}
connectedCallback[] {
this.innerHTML = `
nav {
height: 40px;
display: flex;
align-items: center;
justify-content: center;
background-color: #0a0a23;
}
ul {
padding: 0;
}
a {
font-weight: 700;
margin: 0 25px;
color: #fff;
text-decoration: none;
}
a:hover {
padding-bottom: 5px;
box-shadow: inset 0 -2px 0 0 #fff;
}
- About
- Work
- Contact
`;
}
}
customElements.define['header-component', Header];
4 để tải Font Awesome vào thành phần của mìnhconst template = document.getElementById['welcome-msg'];
document.body.appendChild[template.content];
9Lưu ý rằng URL phải giống với URL bạn đang sử dụng trong
5#3. Sử dụng JavaScript để tự động tải phông chữ tuyệt vời cho thành phần của bạn
Cuối cùng, cách DRYest để tải Font Awesome trong thành phần của bạn là sử dụng một chút JavaScript
0thành phần/chân trang. jsPhương pháp này dựa trên câu trả lời này trên Stack Overflow và hoạt động khá đơn giản. Khi thành phần tải, nếu tồn tại một phần tử
class Header extends HTMLElement {
constructor[] {
super[];
}
connectedCallback[] {
this.innerHTML = `
nav {
height: 40px;
display: flex;
align-items: center;
justify-content: center;
background-color: #0a0a23;
}
ul {
padding: 0;
}
a {
font-weight: 700;
margin: 0 25px;
color: #fff;
text-decoration: none;
}
a:hover {
padding-bottom: 5px;
box-shadow: inset 0 -2px 0 0 #fff;
}
- About
- Work
- Contact
`;
}
}
customElements.define['header-component', Header];
1 trỏ đến Phông chữ tuyệt vời, thì phần tử đó sẽ được sao chép và nối vào Shadow DOM của thành phần đóMã cuối cùng
Đây là mã cuối cùng trên tất cả các tệp trông như thế nào và sử dụng phương pháp #3 để tải Phông chữ Tuyệt vời vào thành phần chân trang
const template = document.getElementById['welcome-msg'];
document.body.appendChild[template.content];
1chỉ số. html
2phong cách. css
3thành phần/tiêu đề. js
4thành phần/chân trang. jsKết thúc
Chúng tôi đã đề cập rất nhiều ở đây và bạn có thể đã quyết định chỉ sử dụng React hoặc Handlebars. thay vào đó là js
Đó là cả hai lựa chọn tuyệt vời
Tuy nhiên, đối với một dự án nhỏ hơn, nơi bạn chỉ cần một vài thành phần có thể tái sử dụng, toàn bộ thư viện hoặc ngôn ngữ tạo khuôn mẫu có thể là quá mức cần thiết
Hy vọng rằng bây giờ bạn đã tự tin để tạo các thành phần HTML có thể tái sử dụng của riêng mình. Bây giờ hãy ra khỏi đó và tạo ra thứ gì đó tuyệt vời [và có thể tái sử dụng]
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
Đọc thêm bài viết
Nếu bạn đọc đến đây, hãy tweet cho tác giả để cho họ thấy bạn quan tâm. Tweet một lời cảm ơn
Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu