1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [CSS] 2 00:00:02,000 --> 00:00:04,810 [Joseph Ong - Đại học Harvard] 3 00:00:04,810 --> 00:00:07,160 [Đây là CS50. - CS50.TV] 4 00:00:07,160 --> 00:00:11,430 >> Hôm nay chúng ta sẽ nói về CSS Cascading Style Sheets. 5 00:00:11,430 --> 00:00:14,330 >> Vì vậy, những gì chính xác là CSS? 6 00:00:14,330 --> 00:00:17,120 Vâng, chúng ta hãy phá vỡ CSS hạn xuống thành 2 phần: 7 00:00:17,120 --> 00:00:19,510 Cascading Style Sheets. 8 00:00:19,510 --> 00:00:23,900 Cascading là một ít phức tạp hơn, và đó là một cái gì đó chúng ta sẽ đề cập đến trong đoạn video khác. 9 00:00:23,900 --> 00:00:27,930 Tuy nhiên, để bắt đầu, Style Sheets gợi ý rất nhiều vào những gì CSS không. 10 00:00:27,930 --> 00:00:30,880 Nó cho biết thêm phong cách cho HTML của một trang web, 11 00:00:30,880 --> 00:00:33,720 thay đổi trang web như thế nào về mặt thẩm mỹ trông. 12 00:00:33,720 --> 00:00:38,310 Điều này có nghĩa là tất cả mọi thứ từ các phông chữ của văn bản đến các vị trí của nội dung trên trang 13 00:00:38,310 --> 00:00:43,800 đến những thứ khác mát mẻ như làm cho các góc của một hộp tròn hoặc thêm bóng vào văn bản. 14 00:00:43,800 --> 00:00:48,230 Bạn thậm chí có thể làm những điều điên như làm cho mọi việc sinh động trên màn hình. 15 00:00:48,230 --> 00:00:51,700 >> Vì vậy, làm thế nào để chúng ta sử dụng CSS với HTML? 16 00:00:51,700 --> 00:00:53,620 Hãy trang web này kém tôi chỉ viết. 17 00:00:53,620 --> 00:00:57,290 Nếu Rob xem tại trang web này ngay bây giờ, ông có thể nói một cái gì đó như, 18 00:00:57,290 --> 00:01:01,730 "Wow giới thiệu của tôi trông! Khủng khiếp. Joseph, bạn là một nhà thiết kế khủng khiếp." 19 00:01:01,730 --> 00:01:05,110 "Sử dụng mặc định phông Times Helvetica là tốt hơn rất nhiều." 20 00:01:05,110 --> 00:01:09,600 >> Vì vậy, những gì có thể là cách đơn giản nhất để áp dụng các kiểu dáng Rob muốn? 21 00:01:09,600 --> 00:01:13,530 Các lô cách rõ ràng nhất của những người ban đầu đã viết CSS 22 00:01:13,530 --> 00:01:17,470 là đặt những gì chúng ta gọi là phong cách khai báo đúng trong các yếu tố chính nó 23 00:01:17,470 --> 00:01:20,560 bằng cách sử dụng thuộc tính style HTML. 24 00:01:20,560 --> 00:01:26,420 Một tuyên bố phong cách đơn giản bao gồm các tài sản CSS của phần tử HTML, chúng tôi muốn thay đổi 25 00:01:26,420 --> 00:01:32,140 theo sau bởi một dấu hai chấm tiếp theo là giá trị mới của tài sản và dấu chấm phẩy ở cuối. 26 00:01:32,140 --> 00:01:36,600 Ví dụ, chúng ta hãy nói rằng Rob muốn có một đường viền màu đen xung quanh giới thiệu của mình. 27 00:01:36,600 --> 00:01:40,040 Đầu tiên chúng ta đặt thuộc tính style div Rob ở đây 28 00:01:40,040 --> 00:01:43,830 sau đó bên trong dấu ngoặc kép đặt một tờ khai CSS: 29 00:01:43,830 --> 00:01:47,880 "Border: 1px solid black;" 30 00:01:47,880 --> 00:01:52,480 Pixel 1 đề cập đến chiều rộng của biên giới, rắn đề cập đến phong cách của biên giới, 31 00:01:52,480 --> 00:01:56,640 và màu sắc cuối cùng xác định những gì là màu của biên giới. 32 00:01:56,640 --> 00:02:01,220 >> Nếu chúng ta muốn nhiều phong cách trên một phần tử, viết các tờ khai theo thứ tự. 33 00:02:01,220 --> 00:02:05,650 Ví dụ, nếu Rob muốn tiêu đề văn bản của mình trong Helvetica với một nền màu xanh 34 00:02:05,650 --> 00:02:09,270 và không gian xung quanh văn bản, chúng ta có thể làm điều này: 35 00:02:09,270 --> 00:02:19,800 style = "font-family: Helvetica; background-color: blue; padding: 5px;" 36 00:02:22,150 --> 00:02:28,010 Dấu chấm phẩy cuối cùng thực sự là tùy chọn, nhưng người ta thường giữ nó trong cho vì lợi ích của tính nhất quán của. 37 00:02:28,010 --> 00:02:32,180 >> Chúng tôi sẽ tiết kiệm được giải thích một số mát và phức tạp hơn thuộc tính CSS 38 00:02:32,180 --> 00:02:34,140 video khác. 39 00:02:34,140 --> 00:02:38,780 Nếu bạn có một cái gì đó trong tâm trí, chỉ cần Googling hiệu ứng bạn muốn tiếp bằng CSS 40 00:02:38,780 --> 00:02:41,590 có lẽ sẽ cho bạn kết quả khá tốt. 41 00:02:41,590 --> 00:02:44,530 Điều thú vị là rằng CSS là khá rộng, 42 00:02:44,530 --> 00:02:48,470 do đó, tỷ lệ cược là nếu có bất cứ điều gì bạn muốn làm trong vòng lý do - 43 00:02:48,470 --> 00:02:51,350 CSS có thể có thể làm điều đó. 44 00:02:51,350 --> 00:02:54,750 Chúng tôi gọi đây là loại của kiểu dáng phong cách nội tuyến. 45 00:02:54,750 --> 00:02:59,030 Các phong cách là yếu tố, tốt, phù hợp với thẻ bắt đầu. 46 00:02:59,030 --> 00:03:01,770 >> Đối với folks người thực sự muốn được tổ chức, 47 00:03:01,770 --> 00:03:05,800 bạn có thể bắt đầu nhận được một ít peeved lộn xộn này tất cả sẽ. 48 00:03:05,800 --> 00:03:09,810 Hãy tưởng tượng nếu bạn phải làm điều này cho tất cả các yếu tố trên trang, 49 00:03:09,810 --> 00:03:13,690 cộng với HTML và CSS của bạn là tất cả trộn lẫn và lộn xộn. 50 00:03:13,690 --> 00:03:15,500 Gross, phải không? 51 00:03:15,500 --> 00:03:21,110 Để sửa lỗi này, mọi người cuối cùng bắt đầu đánh bắt trên để tách HTML của họ đánh dấu 52 00:03:21,110 --> 00:03:26,370 từ phong cách CSS của họ bằng cách sử dụng một cái gì đó được gọi là bộ chọn CSS. 53 00:03:26,370 --> 00:03:31,780 Selectors CSS được sử dụng để lựa chọn các yếu tố để tờ khai được áp dụng. 54 00:03:31,780 --> 00:03:38,600 Một bộ chọn kết hợp với một danh sách các tờ khai CSS thường được gọi là một quy tắc CSS. 55 00:03:38,600 --> 00:03:43,260 Những quy định này sẽ được đặt giữa các thẻ phong cách mở và đóng HTML, 56 00:03:43,260 --> 00:03:46,120 thường trong phần đầu của tài liệu. 57 00:03:46,120 --> 00:03:49,000 >> Nó dễ dàng hơn để xem với một ví dụ, 58 00:03:49,000 --> 00:03:53,000 do đó, chúng ta hãy bắt đầu bằng cách tạo ra một quy tắc CSS đơn giản. 59 00:03:53,000 --> 00:03:58,180 Trước tiên, chúng ta hãy đặt thẻ phong cách trong phần đầu của HTML của chúng ta. 60 00:03:58,180 --> 00:04:00,020 Tiếp theo, chọn. 61 00:04:00,020 --> 00:04:03,490 Chúng tôi sẽ bắt đầu bằng cách sử dụng một trong các selectors đơn giản, biểu tượng băm, 62 00:04:03,490 --> 00:04:08,080 lựa chọn một phần tử HTML thuộc tính ID của nó. 63 00:04:08,080 --> 00:04:11,850 Trong trường hợp này, chúng ta sẽ chọn div đại diện cho giới thiệu Rob 64 00:04:11,850 --> 00:04:16,740 bằng cách gõ các ký tự hash tiếp theo ID của div, cướp. 65 00:04:16,740 --> 00:04:18,579 Bây giờ các tờ khai. 66 00:04:18,579 --> 00:04:24,090 Chúng tôi thêm dấu ngoặc mở và đóng và thay đổi tờ khai trước đó nội tuyến của chúng tôi trên div Rob 67 00:04:24,090 --> 00:04:26,880 bên trong các dấu ngoặc, làm mới, 68 00:04:26,880 --> 00:04:34,160 và mát mẻ, Rob giới thiệu vẫn có một đường viền đen xung quanh nó trừ đi sự xấu xí lộn xộn nội tuyến. 69 00:04:34,160 --> 00:04:39,380 >> Bây giờ, nếu chúng tôi muốn chọn bên trong h1 intro Rob? 70 00:04:39,380 --> 00:04:44,400 Bạn có thể nghĩ, "Chúng ta hãy đặt một ID vào nó và sau đó di chuyển phong cách trước đây của chúng tôi." 71 00:04:44,400 --> 00:04:48,760 Điều đó làm việc, nhưng CSS có những cách khác cho phép bạn chọn các yếu tố 72 00:04:48,760 --> 00:04:53,490 bằng cách sử dụng những gì chúng ta gọi là combinators để trộn chọn đơn giản. 73 00:04:53,490 --> 00:04:57,740 Ví dụ, một ký tự khoảng trắng có thể được sử dụng như là một combinator 74 00:04:57,740 --> 00:05:03,510 để xác định tất cả các trường hợp của 1 chọn sống bên trong của bộ chọn khác. 75 00:05:03,510 --> 00:05:06,630 Đó là âm thanh rất nhiều phức tạp hơn thực tế. 76 00:05:06,630 --> 00:05:08,830 Dưới đây là một ví dụ. 77 00:05:08,830 --> 00:05:13,900 Chúng tôi sẽ gõ # cướp, thêm một không gian, và theo nó với một h1, 78 00:05:13,900 --> 00:05:18,840 khác chọn đơn giản gọi là một chọn từ khóa mà chọn loại yếu tố 79 00:05:18,840 --> 00:05:21,200 như divs hoặc đoạn văn. 80 00:05:21,200 --> 00:05:26,140 Không gian kết hợp 2 của chúng tôi chọn đơn giản, áp dụng tất cả các tờ khai CSS 81 00:05:26,140 --> 00:05:32,560 và các dấu ngoặc nhọn để thẻ h1 sống bên trong các phần tử với id = "cướp". 82 00:05:32,560 --> 00:05:38,290 Chỉ cần để thuyết phục bạn rằng nó hoạt động, tôi sẽ thay đổi màu chữ thành màu trắng, làm mới, 83 00:05:38,290 --> 00:05:42,090 và, nhìn, tiêu đề của Rob là màu trắng. 84 00:05:42,090 --> 00:05:47,510 >> Tất cả các công việc này đi để cho thấy rằng bằng cách sử dụng các quy tắc thay vì phong cách nội tuyến 85 00:05:47,510 --> 00:05:50,510 chúng ta có thể nhận được nhiều mã sạch hơn. 86 00:05:50,510 --> 00:05:53,900 Trong thực tế, nếu khối này phong cách bắt đầu nhận được một chút lớn, 87 00:05:53,900 --> 00:05:58,340 Tôi thậm chí có thể kéo các phong cách vào một tập tin khác nhau hoàn toàn. 88 00:05:58,340 --> 00:06:05,120 >> Để bao gồm các tập tin mới như CSS trong tài liệu này, tôi sẽ chỉ sử dụng thẻ liên kết của HTML. 89 00:06:05,120 --> 00:06:10,320 Ở đây tôi đang nói với nó rằng tôi đang liên kết trong tờ mẫu bên ngoài, thuộc tính rel, 90 00:06:10,320 --> 00:06:14,840 và xác định đường dẫn đến tập tin với thuộc tính href của tôi. 91 00:06:14,840 --> 00:06:20,290 HTML của tôi đánh dấu và CSS được tổ chức độc đáo trong các tập tin hoàn toàn riêng biệt, 92 00:06:20,290 --> 00:06:26,090 mà là hầu như luôn luôn là cách thiết kế thích làm việc với HTML và CSS. 93 00:06:26,090 --> 00:06:30,180 >> Trong trường hợp bạn đang tự hỏi, chọn đơn giản bao gồm selectors ID 94 00:06:30,180 --> 00:06:33,100 và thẻ selectors như những người chúng tôi chỉ thấy 95 00:06:33,100 --> 00:06:38,610 cũng như các lớp chọn để lựa chọn các yếu tố với một lớp học nào đó, 96 00:06:38,610 --> 00:06:44,000 thuộc tính chọn để lựa chọn các yếu tố của các thuộc tính khác như loại = "radio" 97 00:06:44,000 --> 00:06:49,180 cho đầu vào nút radio, và pseudoselectors như di chuột và tập trung 98 00:06:49,180 --> 00:06:55,260 để xác định phong cách khi tương tác thích khi rê chuột lên một yếu tố xảy ra. 99 00:06:55,260 --> 00:06:58,950 >> Các combinators thông thường bao gồm khoảng trắng cho tất cả trẻ em 100 00:06:58,950 --> 00:07:02,080 và dấu phẩy để phân biệt selectors. 101 00:07:02,080 --> 00:07:06,370 Những người khác bạn có thể gặp phải bao gồm các mũi tên chỉ cho trẻ em trực tiếp, 102 00:07:06,370 --> 00:07:10,440 dấu ngã cho tất cả các anh, chị, em ruột xảy ra sau khi các phần tử, 103 00:07:10,440 --> 00:07:16,010 và dấu cộng cho anh chị em 1 ngay lập tức sau khi các phần tử. 104 00:07:16,010 --> 00:07:18,540 >> Bằng cách kết hợp các selectors và combinators, 105 00:07:18,540 --> 00:07:22,910 bạn có thể mở rộng phạm vi của phong cách, bạn có thể đạt được trên một trang web nhất định 106 00:07:22,910 --> 00:07:25,050 và viết CSS hiệu quả hơn. 107 00:07:25,050 --> 00:07:28,370 Với chỉ một vài dòng CSS bạn nhìn thấy tôi gõ ở đây, 108 00:07:28,370 --> 00:07:34,460 Tôi có thể nhanh chóng làm cho một cái gì đó như thế này trông giống như một cái gì đó như thế này. 109 00:07:34,460 --> 00:07:37,080 >> Tôi là Joseph, và đây là CS50. 110 00:07:37,080 --> 00:07:39,260 >> [CS50.TV] 111 00:07:39,260 --> 00:07:40,780 >> Uh, nơi nào tôi bắt đầu? 112 00:07:40,780 --> 00:07:44,140 Hãy để tôi làm điều đó mà không cần - [cười] Được rồi. 113 00:07:44,140 --> 00:07:47,300 Thêm một - Hãy để tôi thay đổi từ ngữ đó. 114 00:07:50,580 --> 00:07:52,470 Ooh. Xin lôi.