Less.js: ParseError: Masukan tidak dikenal dengan «DIV {width: 500px \ 9}»

Dibuat pada 26 Sep 2014  ·  13Komentar  ·  Sumber: less/less.js

Parsing sukses dengan:

DIV {
    width: 500px\9;
}

ParseError: Masukan tidak dikenal dengan:

DIV { width: 500px\9 }

Anda dapat menemukan sintaks ini di https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css

bug medium priority

Komentar yang paling membantu

https://github.com/less/less.js/issues/1538 telah menjadi masalah bagi saya saat mengimpor css bootstrap4 sebagai referensi yang lebih sedikit (bootstrap4 tidak memiliki dist yang kurang lagi).

<strong i="7">@import</strong> (less, reference) "~bootstrap/dist/css/bootstrap.css";
 @ /node_modules/bootstrap/dist/css/bootstrap.css (line 4475, column 31)
 near lines:

   <strong i="10">@media</strong> screen and (min-width: 0\0) {
     .progress {

Ini benar-benar tampak seperti bug, perkiraan kapan ini bisa memperbaiki @ seven-phases-max @lukeapage ? Terima kasih!

Semua 13 komentar

Ya, ini disebutkan di # 284. Tapi saya pikir ini harus dianggap sebagai bug sejak itu
500px\9 sebenarnya adalah sintaksis CSS yang valid dengan nilai yang tidak valid (untuk browser "standar" sama dengan 500px? sehingga mereka mengabaikannya) jadi secara teknis Less harus meneruskannya.

@harobed Anda juga harus mengimpor sumber lebih sedikit di dalam bootstrap, bukan output css

@lukeapage ada beberapa alasan mengapa seseorang mungkin ingin mengimpor file Bootstrap yang dikompilasi dan bukan .bs {<strong i="6">@import</strong> (less) 'bootstrap.css';} atau memperluas kelas tertentu yang dibuat secara dinamis (karena kelas tersebut tidak dapat diperpanjang dalam Less sources).
Meskipun untuk kasus khusus ini, mengimpor bootstrap.css non-minified akan sama dan akan diproses oleh Less just fine (karena width: 500px\9; ada kompilasi seperti yang diharapkan). Jadi saya rasa yang satu ini bisa dianggap lebih seperti masalah estetika.

Cukup adil, @harobed mungkin punya alasan kuat untuk melakukannya.
Saya tidak setuju kita harus memperbaikinya ..

Namun, itu mengurai dengan versi yang tidak dikecilkan ...
Salah satu cara untuk melakukannya adalah dengan membuat nilai anonim bekerja tanpa titik koma.

Sudah mencoba dan gagal membuat ini berfungsi dengan nilai anonim.

Saya punya ini ..

                var match = parserInput.$re(/^([^@+\/'"*`(;{}-]*)(;|(?=\}))/);
                if (match) {
                    return new(tree.Anonymous)(match[1].trim());
                }

tapi kemudian mengubah cara kerja spasi sedikit. Juga mendapat di bawah, tapi itu tidak berhasil.

                var match = parserInput.$re(/^(([^@+\/'"*`(;{}-\s]+|\s*?)+?)\s*(;|(?=\}))/);
                if (match && match[3]) {
                    return new(tree.Anonymous)(match[1]);
                }

Harapan yang membantu pelaksana masa depan (atau saya sendiri jika saya mengambilnya kembali)

@lukeapage Apakah Anda menjelaskan " @harobed Anda juga harus mengimpor sumber lebih sedikit di dalam bootstrap, bukan output css"? Saya baru mengenal Less dan mengalami masalah yang sama dengan \ 9 di tema WordPress Bootstrap yang saya buat. Apakah ini solusinya?

@harobed Bootstrap Sumber yang lebih sedikit hanya memiliki \9; atau lolos ~'\9' dan pernyataan ini dikompilasi oleh kompilator dengan baik ... Jadi itu semata-mata tergantung pada apa dan bagaimana Anda sebenarnya mencoba untuk mengkompilasi.

Saya melihat. Folder dev tema saya memiliki dua anak, src dan publik. Bootstrap ada di src / less / bootstrap dengan file Less kustom saya di src / less. Dari folder dev tema saya, saya mengkompilasi dengan lessc src / less / style.less public / style.css

Ini bekerja dengan baik sampai saat ini. Saya menginstal clean-css, lalu menghapus instalannya. Kemudian kompilasi mulai menampilkan kesalahan pada \ 9. Saya bekerja dengan orang-orang npm dan tampaknya saya memiliki pencopotan yang bersih, jadi itu seharusnya tidak menjadi masalah.

Ide apa pun akan dihargai.

@septianjoko_

Kemudian kompilasi mulai menampilkan kesalahan pada \ 9.

Pesan kesalahan dan baris terkait yang ditunjukkan biasanya sangat membantu.

Ya tentu saja. Maaf atas kelalaian tersebut.

Saya memulihkan gaya terbaru saya. Tanpa kompilasi dan bekerja lagi.

Terima kasih atas waktu Anda, @ seven-phases-max.

Sekarang
DIV { left: 500px\9 }
tidak apa-apa, tapi
DIV { left: -500px\9 }
masih gagal

https://github.com/less/less.js/issues/1538 telah menjadi masalah bagi saya saat mengimpor css bootstrap4 sebagai referensi yang lebih sedikit (bootstrap4 tidak memiliki dist yang kurang lagi).

<strong i="7">@import</strong> (less, reference) "~bootstrap/dist/css/bootstrap.css";
 @ /node_modules/bootstrap/dist/css/bootstrap.css (line 4475, column 31)
 near lines:

   <strong i="10">@media</strong> screen and (min-width: 0\0) {
     .progress {

Ini benar-benar tampak seperti bug, perkiraan kapan ini bisa memperbaiki @ seven-phases-max @lukeapage ? Terima kasih!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat