powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Styles
25 сообщений из 41, страница 1 из 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
25 сообщений из 41, страница 1 из 2
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Styles
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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