powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Styles
41 сообщений из 41, показаны все 2 страниц
Styles
    #35623706
Фотография Warstone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
<STYLE> DIV.cooldiv {width:100px}</STYLE>
...
<DIV class="cooldiv">...</DIV>
Как получить вон те злосчастные 100px? То есть меня интересует не текущие размеры DIV'а или ещё что.
Пока что нашел только вот что:
obj.className дает имя класса.
ожно оббежать все стили через такую конструкцию: document.styleSheets[0].cssRules[0].width
номера ессно изменяются.
но если стиль задан как-нить вот так:
DIV.contents DIV.cooldiv
то парсинг будет ОЧЕНЬ затруднен. Хотя решаем (получить все классы родителей до BODY и проверять, соответствует ли строчка текушим стилям. Если соответствует, то запомнть. И так запоминать, пока не будет достигнуто максимально возможное количество вхождений названий классов предков).
Соотв. вопрос: Можно ли по ссылки на объект получить примененный к нему CSS стиль из таблицы стилей?
...
Рейтинг: 0 / 0
Styles
    #35623801
luchik_5
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
document.getElementById('идентификатор нужного элемента').style.свойство
...
Рейтинг: 0 / 0
Styles
    #35623811
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если просто, классически и без вывертов обратиться напрямую? - obj.style.width?
(насколько я понимаю, под понятием ссылка на объект есть его представление в DOM-структуре?)

Или трактовать вопрос по-другому: любой объект (условно) имеет ширину, соответственно, чтобы узнать ширину, можно просто написать obj.styles.width. А как узнать, это ширина дефолтовая или заданная в таблице стилей? - Так, что ли? Если так, то даже сложно сказать - задача нетривиальная и малоприменимая в жизни. Хотя вариант с обходом дерева таблиц стилей возможен, но не принесет никакой пользы: во-первых, cssRules - такой коллекции нет, есть rules; во-вторых, каждый item коллекции rules возвращает значение типа объект style, к которому мы можем обратиться и так напрямую - obj.style. Так что думаю, что вариантов не так много - проверять значение с дефолтовым.

Хотя, возможно, вопрос состоит не в этом.
...
Рейтинг: 0 / 0
Styles
    #35623852
Фотография Warstone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
luchik_5document.getElementById('идентификатор нужного элемента').style.свойствоВыложу полный текст и полную задачу. Просто не получилось...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
<HTML>
<HEAD>
	<STYLE>
TABLE.dWindow_table{

	border-collapse:collapse;

	border-spacing:0px;

	padding:0px;

	width: 100 %;

	height: 100 %;

}
TABLE.dWindow_table TD{
	border:0px;
	padding:0px;
	margin:0px;

}

TABLE.dWindow_table TD.borderLT{

	width:4px;

	height:4px;

	background-color: #FF0000;

}

TABLE.dWindow_table TD.borderT{

	height:4px;

	background-color: #00FF00;

}

TABLE.dWindow_table TD.borderRT{

	width:4px;

	height:4px;

	background-color: #0000FF;

}

TABLE.dWindow_table TD.CArea{

	background-color: #FFFFFF;
}
TABLE.dWindow_table DIV.CArea{

	overflow:hidden;
}

TABLE.dWindow_table TD.borderR{

	width:4px;

	background-color: #5555FF;

}

TABLE.dWindow_table TD.borderL{

	width:4px;

	background-color: #FF5555;

}

TABLE.dWindow_table TD.borderLB{

	width:4px;

	height:4px;

	background-color: #FFAAAA;

}

TABLE.dWindow_table TD.borderB{

	height:4px;

	background-color: #AAFFAA;

}

TABLE.dWindow_table TD.borderRB{

	width:4px;

	height:4px;

	background-color: #AAAAFF;

}
	</STYLE>
</HEAD>
<BODY>
<DIV style="position:absolute;top:100px;left:100px;width:100px;height:100px;overflow:hidden">
	<TABLE class="dWindow_table" Id="t0">
		<TR>
			<TD class="borderLT" Id="t1"></TD>
			<TD class="borderT"></TD>
			<TD class="borderRT" Id="t2"></TD>
		</TR>
		<TR>
			<TD class="borderL"></TD>
			<TD class="CArea" Id="target">
				<DIV class="CArea">
					qwertyuiopasdfghjklzxcvbnm
				</DIV>
			</TD>
			<TD class="borderR"></TD>
		</TR>
		<TR>
			<TD class="borderLB"></TD>
			<TD class="borderB"></TD>
			<TD class="borderRB"></TD>
		</TR>
	</TABLE>
</DIV>
<SCRIPT>
	alert(t1.style.width);
</SCRIPT>
</BODY>
</HTML>
Вопрос: Как посчитать размер рамки (в данном случае он = 8 пикселей, в зависимости от CSS может меняться, но всегда задан для рамок) и изменить внутренний DIV так, чтоб он не ломал рамки?

Мысли бродяn в сторону style="overflow:hidden;width:###;height:###", но как высчитать width и height.
...
Рейтинг: 0 / 0
Styles
    #35623860
Фотография Warstone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruckА если просто, классически и без вывертов обратиться напрямую? - obj.style.width?
(насколько я понимаю, под понятием ссылка на объект есть его представление в DOM-структуре?)
1) Нет, он может быть не задан. Вообще надо спрашивать offsetWidth но и это не панацея.
2) Да.

IDVsbruckА как узнать, это ширина дефолтовая или заданная в таблице стилей?
Какая ширина была задана(если задана, конечно) в таблице стилей для этого объекта? (class у объекта прописан)
...
Рейтинг: 0 / 0
Styles
    #35624556
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
luchik_5document.getElementById('идентификатор нужного элемента').style.свойствоУвы, увы...
Так не будет работать.

Из JavaScript так можно получить значение, только если стиль задан "напрямую" (аттрибутом style).

Пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
<html>
<head>
<style>
div { width:100px; background-color:green }
</style>
<script type="text/javascript">
function f(d)
{
  alert(d.style.width);
  alert(d.style.height);
}
</script>
</head>
<body>
<div style="height:100px" onclick="f(this);"></div>
</body>
</html>

ЗЫ: Хотя, возможно, если где-то что-то прописать и пару раз ударить в бубен, то стиль из таблицы можно будет прочитать...
...
Рейтинг: 0 / 0
Styles
    #35624806
The_ShadoW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут весьма доходчиво написано про "как", "где" и "на какие грабли вы наступите". Юзал это лично, но у меня проект о двух браузерах, так что не знаю, как оно себя поведет при реальной кроссбраузерности.
...
Рейтинг: 0 / 0
Styles
    #35625269
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ребята, не утомило каждую изъезжанную проблему с нуля решать? используйте библиотеки и не надо такой ерундой заниматься самому, есть намного более интересные и сложные задачи, на которые у вас просто не хватит времени из-за копания в мелочах
...
Рейтинг: 0 / 0
Styles
    #35625376
The_ShadoW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А кто копается-то? о_О

Спросил человек, ему показали. И к тому же, "используйте библиотеки" - это не универсальное лекарство. Я в настоящее время сижу без библиотек в силу того, что их использование перекрывает некоторые привлекательные варианты для сейлзов (типа продаж продукта в составе продуктов других контор). А когда библиотек нету, приходится вспоминать и мелочи.

ЗЫ: Кстати, вот сейчас уже на этапе беты довелось поглядеть на проект в соединении с чужой "оболочкой", юзающей ext js. Не впечатлило (хотя это не ext js виновата, а руки, её использовавшие) - более убого выглядящие страницы юзают по полтора мегабайта ужатого js-кода. Самописка же работает с ~400Кб не сжатого js.
...
Рейтинг: 0 / 0
Styles
    #35626040
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в продаваемом продукте никто не мешает использовать библиотеки с соответствующей лицензией, иначе получается что ты инвестируешь время в то, что уже решено, т.е. попросту сливаешь их в унитаз, что в период финансового кризиса недопустимо на крайний случай берем, открываем любую библиотеку, и копируем оттуда метод getStyle() к себе
...
Рейтинг: 0 / 0
Styles
    #35626420
The_ShadoW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыв продаваемом продукте никто не мешает использовать библиотеки с соответствующей лицензией
Фига! Уверены? Сколько продуктов продали? В каких опциях?

А то я как-то мрачен в этом вопросе, привык больше на негламурный вердикт ПМ (у которого входящая инфа от юристов и сейлов) полагаться.

ЗЫ: Естественно копипаст. Только делая копипаст, стоит понимать смысл того, что копипастится. А то может случиться ой.
...
Рейтинг: 0 / 0
Styles
    #35626549
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_ShadoW
Фига! Уверены? Сколько продуктов продали? В каких опциях?

а в чем проблема? MIT license у того же jquery для твоего продукта недостаточно?
The_ShadoW
ЗЫ: Естественно копипаст. Только делая копипаст, стоит понимать смысл того, что копипастится. А то может случиться ой.
понимание приходит после и во время копирования, но никак не до.
...
Рейтинг: 0 / 0
Styles
    #35626907
The_ShadoW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыа в чем проблема? MIT license у того же jquery для твоего продукта недостаточно?
Дык вот я и интересуюсь, в целЯх набора опыта! Какие там проблемы бывают, итыды. А то ж я в вопросах продаж как-то не подкован ни разу - говорят "низзя", так приходится соглашаться.
Вот поэтому и спрашиваю у опытных в деле сейла товарищей - как там оно, в вопросе составных продуктов, раскрученных брендов и т.п. Не мешают ли посторонние лицензии? А то вот вроде не должны, однакож нету в составе венды апача на GPL, ну хоть тресни! Всё какой-то IIS. Чего ж они так?

зыпонимание приходит после и во время копирования, но никак не до.
...после упорных и мучительных часов копипаста java-кода в js-скрипт к ним пришло понимание , что что-то здесь не так...
...
Рейтинг: 0 / 0
Styles
    #35626928
The_ShadoW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыMIT license у того же jquery для твоего продукта недостаточно?
jQuery слишком ортогонален проекту, так что его туда тащить просто смысла нет. Вот Ext js пошел бы - но не знаю, в каком состоянии он был 3 года назад, когда веб-часть проекта стартовала. А на данный момент оно уже всё в виде самописки есть, с адекватной и устоявшейся core-частью. В итоге, покупка лицензии ext js на 25 человек слишком уж напоминает "шило на мыло", еще и с денежными расходами.
...
Рейтинг: 0 / 0
Styles
    #35627572
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у нас используется dojo, лицензия тоже открыта для коммерческого использования. jQuery я привел для примера просто как самое простое и открытое, где есть обсуждаемый функционал. Можно и другие либы поковырять, мне лениво бежать по их сайтам и искать лицензии - кому надо найдет :) И никто никому не мешает. ExtJS - другая опера, нынче они целиком и полностью на коммерческих рельсах, зато с гарантированным качеством.
...
Рейтинг: 0 / 0
Styles
    #35627851
The_ShadoW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыИ никто никому не мешает.
Дык значит мы всё-таки увидим суровый поток брендовых продуктов (а не жалкие единицы) с прикрученными к ним библиотеками и компонентами на всяких-разных лицензиях?

Верю на слово.
...
Рейтинг: 0 / 0
Styles
    #35628051
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вы там у себя ORM тоже пишете свой, или все-таки... ? :) впрочем, как говорится, любые прихоти заказчика за его же деньги. Меньше лицензий => больше времени => больше денег
...
Рейтинг: 0 / 0
Styles
    #35629291
The_ShadoW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зывы там у себя ORM тоже пишете свой, или все-таки... ? :)
Не, свой ORM и своя мини-БД уже давно написаны (лет 5 и тому и другому уже точно есть), только в рамках другого проекта конторы. И соответственно, релиз в зависимости от надобностей заказчика идет либо на самописках, либо на том же MS SQL и т.п. Только вот js-библиотека - не БД, фиг её так просто сменишь.
...
Рейтинг: 0 / 0
Styles
    #35629312
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовал поюзать демки из dojo с официального сайта. Не знаю смеяться или плакать. В фирефоксе не менее трёх ошибок на каждой демке, а в ИЕ, в большинстве случаев - вообще не работает. Не проверял в хроме и в сафари, предполагаю, что - ещё хуже. Ты чего, только тем и занимаешься, что эти острые углы обходишь?
...
Рейтинг: 0 / 0
Styles
    #35629331
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну багов у них да, многовато кое-где даже пришлось пофиксить самим. выбран был исторически, потому что нормальных альтернатив некоторым фичам тогда не было. Хотя качество демок у них страдает само по себе, если начать использовать, то вроде как не все так страшно
...
Рейтинг: 0 / 0
Styles
    #35629352
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зато там есть такая штука до которой я и не додумался бы. Хранить данные, используя невидимую флешку (!). Надо взять на вооружение.
...
Рейтинг: 0 / 0
Styles
    #35629374
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну-ка, ну-ка, что это еще за изврат? О каких данных идет речь?
...
Рейтинг: 0 / 0
Styles
    #35629380
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruck,

Представь себе, dojo делает некоторое хранилище данных, получая доступ к файловой системе с помощью невидимой флэшки. Круто! На уровне хацкера с первого курса, но - умно.
...
Рейтинг: 0 / 0
Styles
    #35629385
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хранилище на стороне клиента . Даже в википедии есть.
...
Рейтинг: 0 / 0
Styles
    #35629391
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это для тех у кого нет шестеренок, в общем-то там целый набор разных методов offline storage, флэш - один из них
...
Рейтинг: 0 / 0
Styles
    #35629710
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыэто для тех у кого нет шестеренок...
Наверное, у меня их нет. Потому что, достаточно хранить в файле одну-единственную строчку в формате JSON, и твоя хтмл-ка превращается в нехилую десктопную БД, со всеми графическими прелестями хтмл, цсс и яваскрипт, плюс ко всему данные элементарно конвертятся XML->JSON и JSON->XML, а значит - куда угодно.
...
Рейтинг: 0 / 0
Styles
    #35630190
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
шестеренки = google gears
...
Рейтинг: 0 / 0
Styles
    #35631149
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Слушай, IDVsbruck , а не написать бы тебе флешку, которая строки читает и сохраняет их из-под яваскрипт? Мне так кажется, что за 5 минут управишься, а мне надо чё-то изучать и устанавливать, которое ещё и денег стоит... . Могу тебе предложить тоже самое из-под апплетов .
...
Рейтинг: 0 / 0
Styles
    #35631153
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
фи ... апплеты
расшифруй, что ты имеешь в виду под "которая строки читает и сохраняет их из-под яваскрипт"
...
Рейтинг: 0 / 0
Styles
    #35631160
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я слышал, что флешка, умеет как-то хранить данные (например, имеет доступ к файловой системе, или у себя где-то там чего-то там хранит). То, что она умеет общяться со страничкой - дело и так понятное. Ну вот так. На явке - просто. Невидимый апплет (жареный файл проперти).
...
Рейтинг: 0 / 0
Styles
    #35631165
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, это будет откровением, но флешка так же как и страница, не может контактировать с дисковым пространством клиента. Именно поэтому я так удивился по поводу хранилища.

Есть у меня подозрение, что хранилище устраивается не постоянное, а временное - на время жизни страницы (может, это важно - флешка живет дольше сессии), а также то, что она не держит все в памяти в отличие от данных js на странице - все скидывает в кеш. Отсюда - выгода: большие объемы можно держать на клиенте во время использования странички и не сильно при этом засорять память.

Если есть другие варианты - я за!

А апплет использовать для этих целей - дурное дело: к примеру, ты дашь права на использование апплета на своем компе, полученный неизвестно откуда? - Я не даю никогда (кроме www.java.com). Да и файрволл не всегда пустит ...
...
Рейтинг: 0 / 0
Styles
    #35631187
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прав явскому апплету давать не надо - песочница есть на сей счёт. При нынешней (10-й 6-й версии JRE), вообще плагины (читай JRE) устанавливаются мгновенно (судя по документации). Явка опять рулит!
...
Рейтинг: 0 / 0
Styles
    #35631203
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дай бог ... дай бог ...
...
Рейтинг: 0 / 0
Styles
    #35631240
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruckМожет, это будет откровением, но флешка так же как и страница, не может контактировать с дисковым пространством клиента. Именно поэтому я так удивился по поводу хранилища.


Flash local storage Хотя смысла особого не наблюдаю в использовании.
...
Рейтинг: 0 / 0
Styles
    #35631246
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
apapacy,
В чём Вы не видете смысла? Если у Вас на страничке каждая колумна грида (табле) ресайзится, и местами по порядку меняется, и визибле-нивизибле, и страничек у Вас не одна-две и юсеров не одна-другая сотня. Что - это всё для каждого пользователя в базе держать? А я вот ещё написал прибамбасину с rss, где каждый юсер себе сам список каналов составляет (покамест кукисами обошёлся - юникод и 4к всего). Всё-таки, нужно - нужно!
...
Рейтинг: 0 / 0
Styles
    #35631249
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да в базе. Или скажем точнее на сервере. А там уж как пойдет. Для самого - ах- сложного приложения такая информация все равно не будет слишком уж объемной.
...
Рейтинг: 0 / 0
Styles
    #35631268
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как это? Для каждого, возможно и не юсера, а просто - случайно зашедшего, хранить данные о цвете бэкграунда или ширины какой-то колонки, которую он совершенно случайно перетащил? Интересно по какому параметру - по айпи что-ли? У меня вся контора в интернете - под одним айпи, а дома пол-микрорайона.
...
Рейтинг: 0 / 0
Styles
    #35631270
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По кукису. Удалять при неактивности например год. Конечно при отключении кукисов не будет работать. Но на нет и суда нет. Для залогиненных - по имени.
...
Рейтинг: 0 / 0
Styles
    #35631276
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В кукисах много не поместится (4К, во многих случаях - вполне достаточно), а как бы было здорово, когда кажный зашедший по своему желанию мог настроить чего ему хочется. Ну ладно, это - мечты. Я ещё подумаю... .
...
Рейтинг: 0 / 0
Styles
    #35631283
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя, это тоже -мысль. Каждому вошедшему - кукис (хоть в виде гуида). А в базе все его настройки хранить - да и хрен с ним. Действительно, не страшно, не одноклассники же ру, в конец-то концов.
...
Рейтинг: 0 / 0
Styles
    #35631347
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Угу. Все время так делаю - дешево и сердито.
...
Рейтинг: 0 / 0
41 сообщений из 41, показаны все 2 страниц
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Styles
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]