2012-01-19 20 views
10

Có thể tham chiếu đến thuộc tính được xác định trước đó trong bộ chọn mà không đưa vào biến trung gian không?SASS/SCSS: Tham khảo tài sản mà không sử dụng biến trung gian

Tôi muốn nói điều gì đó như:

.foo { 
    padding: 15px; 
    width: 300px - $padding; 
} 

Tôi biết rằng $ đệm cú pháp tìm kiếm một biến xác định, tôi chỉ sử dụng nó trong ví dụ trên để minh họa cho những gì tôi muốn đạt được trong chức năng.

Ví dụ trên sẽ tương đương như sau:

.foo { 
    $padding: 15px; 
    padding: $padding; 
    width: 300px - $padding * 2; 
} 
+0

cũng muốn có trong Sass. –

Trả lời

8

Không, bạn không thể, và nó sẽ là tuyệt vời.

Tôi chưa thử nghiệm, nhưng theo như tôi biết bộ xử lý trước css duy nhất có thể làm điều đó là stylus. Nhìn vào số variable section trong tài liệu của nó, nơi nó cho biết Tra cứu thuộc tính. Nó hoạt động theo cách đó:

.foo { 
    padding: 15px; 
    width: 300px - @padding * 2; 
} 

Nhưng không, trong Sass bạn không thể, theo như tôi quan tâm.

+8

Đây chính xác là cú pháp tôi muốn trong sass. Tôi sợ nó sẽ không thể. Thời gian để thực hiện yêu cầu tính năng. –

+0

Tôi thứ hai, nó sẽ vô cùng hữu ích trong một số trường hợp (chẳng hạn như các lớp mixin di chuyển tự động thay đổi vị trí nền-hình ảnh theo chiều cao của phần tử gốc)! –

2

Nếu tùy chọn sử dụng một bộ tiền xử lý khác thì hãy quét, tôi thực sự khuyên bạn nên sử dụng Stylus. Có một tính năng được gọi là Property lookup mà chính xác là những gì bạn muốn.

+1

Vì khi nào thích hợp để trả lời câu hỏi cho một công nghệ khác? "Làm thế nào tôi có thể làm X với MySQL?" "Bạn không thể, nhưng cơ sở dữ liệu Y hỗ trợ điều đó!" – cimmanon

+2

Có lẽ bạn đang đúng. Nhưng vì không có tùy chọn trong SASS để làm điều này có lẽ nó là một lựa chọn cho người đọc đồng nghiệp để chuyển đổi tiền xử lý. –

+0

Bất cứ khi nào một giải pháp không có sẵn trong các ranh giới của câu hỏi, tôi nghĩ rằng nó là công bằng hơn để đưa ra gợi ý về nơi tìm thấy tính năng được yêu cầu. – theCrius

Các vấn đề liên quan