Cách tạo đường màu đen trong css

Đơn giản ngu ngốc, phải không? . Nhưng thật thú vị khi suy nghĩ trong vài phút và đếm nhiều cách khác nhau mà chúng ta có thể làm. Và ý tôi là gì bởi một dòng nào? . CSS không thể vẽ một đường từ bất kỳ điểm nào đến bất kỳ điểm nào?

Tôi đặt một hình ảnh phía sau tiêu đề blog của mình và bây giờ có các đường kẻ ngang màu đen hiển thị ở trên cùng và dưới cùng của hình ảnh. Tôi không thể tìm ra cách để loại bỏ chúng. Ai đó có thể xem và giúp tôi không?


Tìm hiểu cách tạo một đường thẳng đứng bằng CSS


Tự mình thử »

Ví dụ

Tự mình thử »

Cách căn giữa đường thẳng đứng trong trang của bạn

Ví dụ

.vl {
  biên-trái. 6px màu xanh cố định;
  chiều cao. 500px;
  vị trí. tuyệt đối;
  trái. 50%;
  lề-trái. -3px;
  top. 0;
}

Tự mình thử »


Tìm hiểu cách tạo kiểu cho phần tử giờ bằng CSS


Cách Tạo Phong Cách Nhân Sự







Đường chân trời

Bạn có thể sử dụng thuộc tính

var rootElement = document.documentElement
7 để tạo kiểu cho phần tử
var rootElement = document.documentElement
8

Ví dụ

/* Đường viền đỏ */
giờ. new1 {
  đường viền trên cùng. 1px màu đỏ đặc;
}

/* Đường viền màu đỏ nét đứt */
hr. new2 {
  đường viền trên cùng. 1px nét đứt màu đỏ;
}

/* Đường viền chấm đỏ */
hr. new3 {
  đường viền trên cùng. 1px chấm đỏ;
}

/* Đường viền dày màu đỏ */
hr. new4 {
  đường viền. 1px màu đỏ đặc;
}

/* Đường viền tròn lớn màu xanh lục */
hr. new5 {
  đường viền. 10px màu lục đặc;
  bán kính đường viền. 5px;
}

Tự mình thử »


Trang liên quan

Thẻ giờ HTML

Những gì bạn không thể nhìn thấy trên đường kẻ, đó là nó thực sự là một đường rãnh, nơi phần màu đen là bóng tối. Nếu bạn loại bỏ cái bóng, tôi. e. đặt thuộc tính NOSHADE thành noshade, tôi. e. NOSHADE="noshade", bạn nhận được hiệu ứng sau

Có thể nhìn thấy đường là rãnh khi thuộc tính SIZE được đặt thành 10 (SIZE="10"), sau đó bạn sẽ nhận được hiệu ứng này

Nếu bạn quyết định muốn có một đường liền nét rộng, đủ màu, hãy. g. màu đen, bạn sẽ gặp một số vấn đề với trình duyệt. Internet Explorer chỉ có thể tạo một đường màu đen bằng cách sử dụng STYLE="background-color. #000000; . trong suốt" và tạo một dòng có các đầu vuông, trong khi Firefox yêu cầu thuộc tính STYLE="color. #000000" để hoạt động và điều đó sẽ mang lại cho bạn các đầu tròn trên các dòng. Có thể quản lý màu bằng cách đặt STYLE="color. #000000; . trong suốt; . #000000", mang lại hiệu ứng sau (yêu cầu xem bằng cả hai trình duyệt để thấy sự khác biệt)

Nếu bạn muốn thứ gì đó trông giống như một thanh có các đầu vuông, bất kể trình duyệt nào được sử dụng, bạn cần tạo một hộp thay thế. Đây có thể là một thứ giống như DIV với màu nền đen, chiều cao 10px và chiều rộng 100%. Trong mã nó trông như thế này


Trên trang nó trông như thế này

Nếu bạn so sánh độ dày của các đường, bạn sẽ thấy rằng đối với Firefox, chiều cao 10px cho cùng chiều cao của cả HR và DIV, trong khi Explorer, vì lý do nào đó, làm cho các dòng sử dụng thẻ HR có chiều cao 12px

Som standard er linjen sat to 100% i bredde. Bạn có thể chọn một người đàn ông tự chọn cho đến khi được nhân giống nhanh bằng pixel hoặc tương đối ở trung tâm, f. được rồi. 50%

Nút quay lại đầu trang cho phép người dùng nhanh chóng quay lại đầu trang mà không tốn quá nhiều công sức. Điều này có thể rất hữu ích khi trang có nhiều nội dung hoặc xảy ra, chẳng hạn như trên các trang web một trang, khi cuộn vô hạn được sử dụng hoặc trên thiết bị di động nơi các kích thước màn hình khác nhau có thể khiến nội dung cuộn mở rộng

Những nút đó thường nổi ở góc dưới cùng của trang web và sau đó đưa bạn trở lại đầu trang khi được nhấp vào. Chúng khá dễ tạo bằng JavaScript. Nhưng về mặt trực quan, chúng tôi muốn nó không gây khó chịu trong khi vẫn là mục tiêu đủ lớn để nhấn hoặc nhấp. Hãy xem xét một vài cách chúng ta có thể làm điều này, bắt đầu đơn giản, sau đó cải thiện mọi thứ khi chúng ta tiếp tục

lựa chọn 1. Giữ nó đơn giản

Đầu tiên, chúng tôi chọn nút trong JavaScript

var scrollToTopBtn = document.getElementById("scrollToTopBtn")

Bây giờ

var rootElement = document.documentElement
6 trả về phần tử gốc của tài liệu. Chúng tôi cần nó để lấy các giá trị offset. Vì vậy, tiếp theo, hãy lưu nó vào một biến có tên là
var rootElement = document.documentElement
7 — theo cách đó, việc gọi mã sẽ dễ dàng hơn

var rootElement = document.documentElement

Chúng tôi sẽ thêm trình xử lý sự kiện nhấp chuột vào nút

function scrollToTop {
  // scroll to top logic
}

scrollToTopBtn.addEventListener("click", scrollToTop)

Sau đó, bên trong hàm

var rootElement = document.documentElement
8, chúng ta sẽ làm cho nó cuộn lên đầu màn hình bằng phương thức
var rootElement = document.documentElement
9

function scrollToTop() {
  // Scroll to top logic
  rootElement.scrollTo({
    top: 0,
    behavior: "smooth"
  })
}

Chúng ta cũng có thể tạo kiểu cho nút lên một chút

________số 8

Giờ đây, chúng tôi có thể thả nút ở đâu đó trên trang, chẳng hạn như ở chân trang

   

Và chúng tôi nhận được điều này

Dự phòng nhúng CodePen

Lựa chọn 2. Phát hiện vị trí cuộn

Chúng tôi có thể phát hiện cuộn với trình xử lý sự kiện cuộn

var rootElement = document.documentElement
0

Hàm

function scrollToTop {
  // scroll to top logic
}

scrollToTopBtn.addEventListener("click", scrollToTop)
0 sẽ được gọi mỗi khi người dùng cuộn. Bây giờ chúng tôi cần tổng số pixel mà chúng tôi có thể cuộn

  • function scrollToTop {
      // scroll to top logic
    }
    
    scrollToTopBtn.addEventListener("click", scrollToTop)
    1 đưa ra chiều cao của một phần tử, bao gồm cả phần không nhìn thấy do tràn
  • function scrollToTop {
      // scroll to top logic
    }
    
    scrollToTopBtn.addEventListener("click", scrollToTop)
    2 đưa ra chiều cao bên trong của một phần tử tính bằng pixel, là chiều cao của phần hiển thị

Nếu chúng tôi trừ

function scrollToTop {
  // scroll to top logic
}

scrollToTopBtn.addEventListener("click", scrollToTop)
1 cho
function scrollToTop {
  // scroll to top logic
}

scrollToTopBtn.addEventListener("click", scrollToTop)
2, chúng tôi sẽ nhận được tổng số pixel mà chúng tôi có thể cuộn

var rootElement = document.documentElement
6

Bây giờ chúng ta có một biến có tên là

function scrollToTop {
  // scroll to top logic
}

scrollToTopBtn.addEventListener("click", scrollToTop)
5 đại diện cho số pixel tối đa có thể cuộn theo chiều dọc. Bằng cách chia số lượng cuộn cho tổng số pixel chúng tôi có thể cuộn, chúng tôi nhận được tỷ lệ từ 0 đến 1. Chơi với tỷ lệ này, chúng ta có thể dễ dàng bật và tắt nút

Ví dụ: chúng tôi sẽ thêm một điều kiện hiển thị nút cuộn lên trên cùng khi người dùng đã cuộn 80%, (hoặc tỷ lệ 0. 80) xuống tổng chiều cao của trang. 80% là một con số tùy ý. Về cơ bản, càng tiến gần đến 1, người dùng càng phải cuộn nhiều lần trước khi nhìn thấy nút

Đây là JavaScript

var rootElement = document.documentElement
8

Chúng tôi sẽ muốn một số CSS định vị chính xác nút khi nó xuất hiện

var rootElement = document.documentElement
9

Cùng với đó, nút xuất hiện khi người dùng tải trang được 80% và sau đó ẩn đi khi cao hơn mức đó

Dự phòng nhúng CodePen

Đây có vẻ là một lựa chọn tuyệt vời và việc thiết lập một trình xử lý sự kiện để thực hiện việc này khá dễ dàng. Nhưng chi phí hoạt động có thể tốn kém vì chúng tôi luôn kiểm tra vị trí cuộn hiện tại

Có một tùy chọn khác giải quyết vấn đề này…

Tùy chọn 3. Người quan sát giao lộ

Intersection Observer API là một giải pháp tuyệt vời cho vấn đề trên. Đó là một API trình duyệt khá gần đây cho phép các nhà phát triển giao hầu hết các tác vụ này cho trình duyệt theo cách được tối ưu hóa hơn. Travis Almand đã viết ra một lời giải thích cặn kẽ về cách thức hoạt động của nó. Đây là cách MDN định nghĩa nó

Intersection Observer API cung cấp một cách để quan sát không đồng bộ các thay đổi đối với giao điểm của phần tử đích với phần tử tổ tiên hoặc với chế độ xem của tài liệu cấp cao nhất

khá gọn gàng. Điều đó có nghĩa là nút có thể là yếu tố mục tiêu của chúng tôi

var rootElement = document.documentElement
0

Sau đó, chúng tôi viết một hàm gọi lại để thực hiện điều gì đó khi phần tử của chúng tôi trở thành "giao cắt" với chế độ xem - đây là một cách nói hoa mỹ khi nó xuất hiện trong chế độ xem

Và khi chân trang vào hoặc rời khỏi chế độ xem, tất cả những gì chúng tôi thực sự muốn làm là thêm hoặc xóa một lớp. Cuộc gọi lại nhận một mảng các mục dưới dạng tham số

var rootElement = document.documentElement
1

Chúng ta cần tạo một phiên bản

function scrollToTop {
  // scroll to top logic
}

scrollToTopBtn.addEventListener("click", scrollToTop)
6 mới và truyền cho nó hàm gọi lại mà chúng ta vừa viết

var rootElement = document.documentElement
2

Cuối cùng, chúng tôi yêu cầu người quan sát bắt đầu xem (err, quan sát) phần tử mục tiêu đã được chọn ở trên khi nó giao nhau với chế độ xem

var rootElement = document.documentElement
3

Dự phòng nhúng CodePen

Và những gì về cuộn trơn tru?

Tất nhiên là có thể. Trên thực tế, Chris đã chỉ cho chúng tôi cách thực hiện điều đó với CSS vào năm 2019

var rootElement = document.documentElement
4
var rootElement = document.documentElement
5

Có một chút sắc thái hơn ở đó, chẳng hạn như các cải tiến về khả năng truy cập mà Chris cũng đề cập trong bài đăng. Vấn đề là CSS đang đạt được sức mạnh mới có thể hoàn thành những việc mà chúng ta từng sử dụng JavaScript để làm.


Ở đó bạn có nó. Chúng tôi bắt đầu với một ý tưởng khá đơn giản. Chúng tôi đã cải thiện nó bằng cách hiển thị và ẩn nút dựa trên vị trí cuộn của người dùng. Sau đó, chúng tôi đã cải thiện hiệu suất bằng cách triển khai API Trình quan sát Giao lộ thay vì xem vị trí cuộn hiện tại. Và cuối cùng, chúng ta đã biết cách sử dụng CSS để cuộn mượt mà. Tất cả cùng nhau, chúng ta có một nút cuộn lên trên cùng dễ nhìn và dễ sử dụng, đồng thời không chặn các thành phần khác trên trang

Làm cách nào để tạo một đường màu đen trong HTML?

Làm cách nào để tạo một dòng trong CSS?

CSS (SCSS) .
dòng 1 {
Chiều cao. 1px;
lai lịch. đen;
dòng 2 {
đường viền trên cùng. 1px màu đen đặc;