Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   мой движок ксс селекторов (https://javascript.ru/forum/project/14240-mojj-dvizhok-kss-selektorov.html)

monolithed 08.01.2011 17:38

B@rmaley.e><e я тут задумался а какие вы конкретно селекторы имели ввиду, если не сложно о:
Цитата:

Сообщение от B@rmaley.e><e
а некоторые так вообще являются выдумкой разработчиков и в CSS появляться не собираются.


Shaci 08.01.2011 19:50

Цитата:

Сообщение от monolithed (Сообщение 86867)
B@rmaley.e><e я тут задумался а какие вы конкретно селекторы имели ввиду, если не сложно о:

а случайно не вот такие?
:checkbox
выбирает только элементы-флажки (input[type=checkbox])
:hidden - все скрытые элементы
:submit, :visible и.т.д.

monolithed 08.01.2011 20:00

Цитата:

Сообщение от Shaci
а случайно не вот такие?

на счет этих hidden/visible, вполне логично их нет в спецификации CSS3 селекторов))

в вот такие есть:
input[type="checkbox"]

UPD:
<style type="text/css">
input[type="text"], input[type="checkbox"], input[type="submit"] {
    border: 1px solid red;
}
</style>
<input type="text" />
<input type="checkbox" />
<input type="submit" />

<input type="checkbox" checked="checked" />
<script type="text/javascript">
document.querySelector('input[type="checkbox"]:checked').onclick = function(){alert('clicked')};
</script>

Shaci 08.01.2011 21:52

А вот такой вот не работает li:has(ul) , (в jquery с ним можно работать)
интересно а есть ему аналог?

<style type = 'text/css'>
li:has(ul) {
color:red;
}

li ul {
color:blue;
}

</style>
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3
<ul>
<li>Item 3.1</li>
<li>Item 3.2</li>
</ul>
</li>
</ul>

monolithed 08.01.2011 22:34

мне кажется этот пример не совсем корректый, можно в каком-то случае заменить оператором > (хотя в примере ниже и без него можно обойтись)


<style type='text/css'>
li ul {
    color:blue;
}
    
li ul li ul > li {
    color:red;
}
</style>

<ul>
    <li>Item 1</li>
    <li>Item 2</li>
    <li>
        <ul>
            <li>Item 3.1</li>
            <li>Item 3.2</li>
            <li>
                <ul>
                    <li>Item 4.1</li>
                    <li>Item 4.2</li>
                </ul>
            </li>
        </ul>
    </li>
</ul>

Maxman 10.01.2011 20:26

Очень плохая идея делать через тег style, потому что CSS-3 селекторы поддерживаются всеми браузерами по разному, скажем в ИЕ нет тех которые уже реализованы в других. Не кроссбраузерно - следовательно пользы мало.

Matre 10.01.2011 20:38

Maxman,
вы непонимаете,вся фишка в уникальном аглоритме.
он позволяет писать css3-движки размером 1 КБ
кгода css3 утвердят,мой двиг станет просто бомбой

Maxman 10.01.2011 20:56

Цитата:

Сообщение от Matre (Сообщение 87254)
кгода css3 утвердят

Когда станет поддерживаться везде одинаково - неизвестно, хотя судя по тому как развивается ИЕ, думаю очень не скоро. А пока какой смысл от него? С таким успехом можно просто юзать querySelectorAll()

monolithed 10.01.2011 22:10

Maxman относительно css3-селекторов вы не совсем правы, а точнее в корне не правы!.

CSS3-псевдоклассы (типа :nth-child) уже давенько поддерживаются браузерами (за исключением IE), не говоря уже о CSS2-псевдоклассах (типа :first-line)

CSS2-псевдоклассы поддерживаются даже IE (некоторые их них даже в IE6)

CSS2-селекторы (о них шла речь, к примеру: input[type="text"]), почти все из поддерживается начиная с IE7+

CSS3-псевдоэлементы (::selection и пр.) поддердживают только Safari и Chrom, остальные реализуют через префиксы.

Цитата:

Сообщение от Maxman
судя по тому как развивается ИЕ, думаю очень не скоро.

IE как раз таки развивается лучше чем все остальные (вместе взятые! ), если не в курсе. И на сегодняшний день IE9 осущесвляет практически поддержку HTML5/CSS3/SVG1.1/DOM

Но на сколько мне известно, что IE9 является последним в линейке IE, в след. ОС они обещали предоставить совершенно новую модель браузеро (голосовое и сенсорное управление...).

Maxman 10.01.2011 23:10

monolithed, вы сами привели примеры того, насколько они различаются по поддержке. Я просто имел ввиду что смысл движков типа Sizzle в том что они обеспечивают полную кроссбраузерность начиная с IE6 и старых версий других браузеров, + придуманные селекторы, чем движок Matre не может похвастаться, поэтому мала вероятность того что он станет бомбой :) Размер - да, но одно другому рознь.
Цитата:

Сообщение от monolithed (Сообщение 87277)
в след. ОС они обещали предоставить совершенно новую модель браузеро (голосовое и сенсорное управление...).

Я вас умоляю... Вы верите что они смогут сделать что-то стоящее, где багов было бы меньше чем в альтернативном ПО от OpenSource разработчиков?


Часовой пояс GMT +3, время: 03:53.